이 문서는 '생활코딩' 님의 '지옥에서 온 GIT'을 참고하여 작성됐습니다.
크래프톤 정글에서 살아남기 위한 도구 중 하나가 git이다.
급하게 사용할 때는 github에서 직접 브랜치를 생성하고, 디렉토리를 업로드했다.
0주 차 프로젝트 때는 vscode에서 명령어로 진행하기도 했다.
하지만, 당시 작동되는 원리를 하나도 모른 채 진행하다 보니 오히려 더 긴 시간이 더 소요됐다.
5주 차의 시작과 함께 GIT에 대한 공부를 하고 그 내용을 여기에 메모하려고 한다.
버전 관리 시스템은 미래에 발전할 수도 있고, 사용자의 환경에 따라 명령어나 작동 형태가 다를 수 있다.
이를 참고하여 해당 문서를 활용하면 좋을 거 같다.
win 11, wsl2 ubuntu 20.04 환경에서 진행.
+ zsh , oh my zsh 사용 ( 에디터 꾸미기 )
Version Controll System
CVS , SVN , GIT
버전을 관리하기 위한 시스템 중 하나가 GIT
만약 관리하고자 하는 코드의 복잡도가 낮고 가볍다면, 또한 바로 활용해야 한다면 복잡한 GIT을 활용하지 않고, DropBox 등을 활용하는 것이 좋다.
#1 세팅
1. GIT 설치
Git - Downloads
Downloads macOS Windows Linux/Unix Older releases are available and the Git source repository is on GitHub. GUI Clients Git comes with built-in GUI tools (git-gui, gitk), but there are several third-party tools for users looking for a platform-specific exp
git-scm.com
2. 윈도우 시작에서 GIT BASH 검색하여 실행.
- GIT BASH는 윈도우 환경에서 리눅스, 유닉스에서 사용하는 명령어 형태를 사용할 수 있게 도와주는 프로그램이다.
- 나는 정글에서 사용하는 ubuntu 환경에서 연습하기로 했다.
3. 작업 폴더 만들기 or 들어가기
- pwd : 현재 위치
- mkdir {폴더명} : 폴더 생성
- rmdir {폴더명} : 폴더 삭제
- ls : 폴더 및 파일 목록 출력
- cd {폴더명} : 현재 위치 이동
- git을 입력하면 명령어 및 도움말이 출력된다.

4. .git 폴더 생성 ( git init )
- git init 입력 → .git 폴더 생성 ( ls -al 입력하여 확인 ) : 버전 관리 과정에 생성되는 정보들이 저장된다.
해당 폴더를 삭제하게 되면 마지막 소스코드는 남아있지만 나머지 버전에 대한 정보는 사라진다. (주의할 것)
#2
1. 명령어로 파일 생성
- vim f1.txt : 'vim'이라는 프로그램으로 'f1.txt'라는 파일을 편집 및 생성하겠다.
- vim 명령어 참고 사이트 :
[LINUX] 📚 Vi / Vim 에디터 다루기 명령어 💯 정리
VI / VIM 에디터 파일을 작성하거나 수정하기 위해서는 편집기가 필요하기 마련이다. 윈도우에서는 메모장을 편집기의 기본으로 지원하는 반면, 리눅스에서는 기본 편집기로 vi 편집기를 지원한
inpa.tistory.com
- i를 입력하여 입력 모드로 진입 ( INSERT ) > 내용 입력 > esc ( 명령어 모드 ) > :wq ( write quit ) 수정 사항을 저장하고 에디터를 나간다.
2. git 버전 관리 상태 확인 ( git status )
- git status 입력 ( 버전 관리를 위해서 제일 먼저 익혀야 할 것 )

- 현재 f1.txt라는 파일은 버전 관리가 되고 있는 디렉토리인 'gitfth' 안에 존재하지만 git에게 해당 파일을 버전 관리하라고 명령하기 전 끼지 git 은 해당 파일을 무시한다.
3. 버전 관리 파일 추적 ( git add )
- git add f1.txt : 명확하게 추적하라고 명령한다.

- 왜 이러한 기능이 필요?
- 프로젝트를 하다 보면 핵심적인 파일과 임시적인 파일들을 구분하기 위해서.
임시적인 파일을 배제하기 위해서 버전 관리해야 할 파일을 명확하게 해줘야 한다.
- 즉 핵심적인 파일은 추적하고, 임시적인 파일은 추적하지 않는다.
- clone의 위험성-
clone 한 파일들 잘못 수정하여 commit 하면 main branch의 파일이 망가질 위험이 있다.
#3
버전은 의미 있는 변화를 의미한다.
작업이 완결된 상태가 버전이다.
1. 사용자 등록 ( git config )
- git config --global user.name {이름 or 닉네임}
- git config --global user.email {작성자 이메일}
- 작성자 이름과 이메일을 포함하고 있는 버전이 된다. > 다른 사람이 봤을 때 누가 작업했는지 알 수 있게 된다. 한 번만 입력하면 되는 작업
2. 버전 관리를 git에게 넘기기 ( git commit )
- git commit : vim으로 파일이 열린다. 나는 nano 에디터로 열렸다.
- 혹시나 GNU nano 에디터로 열리게 된다면 에디터 하단에 출력되는 명령어에 따라 편집을 하면 된다.
- nano에서 ^ 표시는 ctrl을 뜻한다.
- 해당 파일은 버전에 대한 메시지를 적는 것이다. ( commit message )

3. 버전 관리 기록 확인 ( git log )
- git log : 버전의 commit message와 만든 사람의 이름, 이메일, 언제 만들었는지 출력된다. ( q 누르면 나가 진다 )
- vim f1.txt > 버전 관리 파일을 수정.

4. 새로운 버전 관리 방법 ( 기존의 파일을 수정한 경우 )
- 바로 git commit 하면 안 된다. 다시 버전 관리 시스템( git ) 한테 add 시켜야 한다.
- 새로운 파일이 생겼을 때 그 파일의 버전 관리를 깃 에게 명령할 때 add 사용. > 최초로 추적할 때 add
- 이미 버전 관리가 되고 있는 파일의 수정이 끝나고 버전을 생성할 때도 add를 사용. > 파일이 수정되어 버전을 만들기 전에 add
- git add {파일명} 이후에 git commit 한다.
긴 글 읽어주셔서 감사드립니다.
22.11.24
'TIL (Today I Learned) > GIT' 카테고리의 다른 글
[GIT] 팀 프로젝트를 위한 git 공부. #5 (0) | 2022.11.25 |
---|---|
[GIT] 팀 프로젝트를 위한 git 공부. #4 (0) | 2022.11.25 |
[GIT] 팀 프로젝트를 위한 git 공부. #3 (0) | 2022.11.25 |
[GIT] 팀 프로젝트를 위한 git 공부. #2 (0) | 2022.11.25 |
댓글