본문 바로가기
Git & Github

[Git] git 사용법, 명령어 정리!!

by 로토마 2021. 7. 26.

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가 삭제된다!!