Git 사용법
두 가지 방법이 가장 많이 쓰인다.
- Command line Interface로 명령어를 입력하기
- GUI로 만들어진 소프트웨어, Source Tree 사용하기
난 CLI를 이용하기로 했다!!
준비물)
- Git
- VSCode
1) Git 저장소 만들기
- 프로젝트를 저장할 파일 생성
- VSCode로 열기
- 내용을 채우고, 저장!
- (Ctrl 키 + ~ 키)를 눌러, Terminal 열기
- Git init 명령어 입력
--> 빈 Git 저장소가 만들어졌다 메시지가 뜨고, 이 폴더는 Git의 관리 하에 들어간다!
- git config --global user.name "(내 이름)" 명령어로 이름 등록
- git config --global user.email "(내 메일주소)" 명령어로 메일 등록
점검!!
잘 따라왔다면...!
숨긴 폴더 보기를 했을 때 .git 폴더가 보여야 한다!!
2) 현재 시점 저장하기
- git status 명령어를 입력해 현재 담기지 않은 파일들을 확인
-> Untracked files: 아래에 표시되는 파일들은 아직 git에서 쳐다보지 않음을 뜻한다!
- git add -A 명령어로 파일을 git에 넣어준다.
점검!!
git status 명령어로 committed 된 파일이 뜨는 걸 확인한다!
파일이 잘 보인다면 제대로 git에 잘 들어갔음을 뜻한다.
- git commit -m "(commit 요약)" 설정한 메시지로 파일들을 저장!!
이때! git status를 입력해 더 이상 commit할 파일이 없는지 확인하자!
모든 commit 과정은
파일 저장 -> git status -> git commit 으로 진행된다!
3) 현재까지의 commit 확인하기
- git log 명령어 입력
--> 아래에 촤르르륵 무엇을 commit했는지 정보와 메시지를 보여준다.
아! 만약, 이 뒤로 키보드가 안누린다면! (q키 + ;키)를 눌러 빠져나오면 된다!
4) 과거로 돌아가기
예전의 commit 상태를 불러오는 것을 뜻한다.
돌아가는 것에는 과감쓰한 방법과 신중쓰한 방법으로 나뉜다 !
- 과감쓰 (git reset)
돌아갈 commit 이후의 commit은 복원할 여지 없이 완전히 지우는 방법이다.
git log로 돌아갈 commit 시점을 확인하고, 돌아갈 commit의 일련번호 앞 여섯자리를 복사!!
그리고 git reset (번호) --hard 명령어를 붙여서 입력해주면...!
두둥!!
선택한 commit 시점으로 파일들이 복원된 것을 확인할 수 있다.
하지만... 미래 시점으로 다시는 돌아갈 수 없음에 유의하자!!
- 신중쓰 (git revert)
이번에도 git log를 해서 지금까지의 commit 내용을 확인한다.
하지만 이번에는 과감쓰와 달리 취소할 시점을 찾아 일련번호 앞 6자리를 복사!!
그리고 git revert (번호) 이렇게 명령어를 입력한다.
--> 이렇게 하면, 새 커밋 메시지를 작성하는 화면이 뜬다.
--> 그리고 그대로 저장하겠다는 vi명령어, :wq를 입력해준다.
다 하면, 파일들이 과거 상태로 돌아와 있는 것을 확인할 수 있다.
하지만, 이 방법의 경우 다시 git log를 해도, reset처럼 이 시점 이후가 지워진 것이 아니라,
뒤에 새 commit이 저장된 것을 확인할 수 있다.
이후에 다시 미래 시점으로 돌아가고 싶다면, 과감쓰 방법을 통해서 reset 해 주면 된다!
5) 평행우주 만들기 (branch)
- git branch (이름) 을 입력
--> 지정한 이름의 branch 가 만들어진다.
- branch에서 작업하고자 한다면, git checkout (branch명) 을 입력해 작업하면 된다.
- 그리고 작업하면서 commit을 해주면서 새로운 시도를 맘껏 하면 된당~~
아! 만약 branch의 내용을 main에 가지고 오고 싶다면??
6 - 1) 다른 우주에서 가져오기 (merge)
- 우선 main으로 checkout을 해주고,
- git merge (branch명) 변화를 가져올 branch를 적어준다.
점검!!
git log --graph --all --decorate 명령어를 입력하면,
두 분기에서의 작업내역을 볼 수 있다. 확인해 가면서 작업하면서 이해하자~
- 주의!!!
하지만 merge 과정에서 같은 부분을 수정했을 때 충돌이 일어날 수 있으니 항상 조심해야 한다!
6 - 2) 다른 우주에서 가져오기 (rebase)
만약 복잡한 branch의 병합과정을 한 줄로 보이게 하려면,
git rebase (branch명) merge 대신 rebase를 사용하면 된다.
한줄로 깔끔하게 표시되는 것을 볼 수 있다.
7) branch 삭제
- git branch -D (branch 명) 명령어를 작성하면 branch가 삭제된다!!
'Git & Github' 카테고리의 다른 글
[github / pull request] 협업 전략 다지기 PR 사용법 정리! (1) | 2021.08.16 |
---|---|
[Github] github 사용법, 명령어 정리!! (0) | 2021.07.27 |
[Git & Github] 그래서 git, github 가 뭐죠? 먹는 건가요? (0) | 2021.07.26 |