[Git] 0.3. Repository에서 commit 내려받기

작성:    

업데이트:

카테고리:

태그: , , , ,

GitHub 원격저장소의 커밋 내려받기

  • 클론 : 원격저장소의 코드와 버전 전체를 내 컴퓨터로 내려받는 것
  • 이전 버전들과 원격저장소 주소 등이 내 컴퓨터의 로컬저장소에 저장


0. setting

  • 지금까지 git 명령어를 해오던 README.txt 파일을 ‘iTshirt-cat’ 폴더에 있었다.
  • iTshirt-cat 폴더는 상위 폴더인 ‘Git’ 폴더 내에 있었다.
  • 이번 Clone 연습을 위해 ‘Git’ 폴더 내에 ‘iTshirt-oct’ 폴더를 새로 생성하였다. 이를 문어의 로컬저장소로 지정하고, 고양이가 원격저장소에 올렸던 커밋을 이 폴더에 내려받는다.

1. Clone

1. iTshirt-oct 폴더를 클릭 후 'Git Bash Here'을 클릭한다.
2. 'clone' 명령어 뒤에 원격저장소 주소를 입력하면 내 로컬저장소에 내려받을 수 있다.
   ※ [Download ZIP]으로 소스코드를 받으면 원격저장소와 버전 정보가 제외됨.
3. 주소를 입력한 뒤 한 칸 띄고 마침표( .) 를 찍어야 한다.
   ※ 찍지 않는다면 [iTshirt-oct] 안에 [iTshirt] 폴더가 생긴다.

실행결과는 다음과 같다.

img_17


2. 궁금증과 해결

어? $ git log 명령어를 입력하면 이전 버전의 log가 나올까?

Clone해온 디렉토리 iTshirt-oct의 Git Bash에서 다음과 같이 입력해보았다.

$ git log

실행결과는 다음과 같다.

img_18

사진처럼 clone을 하면 이전 버전을 확인할 수 있었다. 마지막 commit에서 (HEAD -> master, origin/master, origin/HEAD)의 내용이 이해가 잘 되지 않지만 이후 내용에서 다룰 것이라고 기대하고 일단은 넘어가보았다.


3. 새로 커밋을 올리기

iTshirt-oct 폴더의 README.txt 파일을 다음과 같이 수정했다.

img_19

이후 Git Bash 에서 다음의 명령어를 입력한다.

$ git add README.txt
README.txt 파일 커밋

$ git commit -m "개발자 목록 추가"
커밋에 '개발자 목록 추가' 설명

$ git push origin master
원격저장소에 푸시

실행결과는 다음과 같다.

img_20

그리고 GitHub의 iTshirt Repository를 보면

img_21

위와 같이 추가 커밋이 반영되었음을 확인할 수 있다.


4. cat 폴더 갱신

oct 폴더의 README.txt 수정, 그리고 push로 iTshirt Repository에는 commit 내용이 반영되었으나, local 폴더 cat 폴더는 반영이 되지 않기 때문에 갱신해주어야 한다.

iTshirt-cat 폴더의 Git bash를 실행한 뒤, 다음의 명령어를 입력한다.

$ git pull origin master

실행결과는 다음과 같다.

img_22

그런데 iTshirt-cat 폴더의 README.txt를 확인해보니 문제가 생겼다.

img_23

oct 폴더의 README.txt 처럼 업데이트가 된 것이 아니라, 이렇게 업데이트 내용이 아래 추가된 것처럼 바뀐 것이다.

img_24

다시 명령어를 넣어봐도 모르겠다.

img_25

$ git add README.txt 하고 다시 명령어를 입력해봐도 merge가 안됐다는 내용의 오류가 발생했다.

img_26`

짤막하게 아는 $ rm 명령어를 이용해 README.txt 파일을 제거한 뒤, 다시 pull 명령어를 써봤지만 여전히 merge 문제가 발생했다. 어떡하지ㅠㅠ


Reference

  • 팀 개발을 위한 Git GitHub 시작하기, 한빛미디어, 정호영,진유림

댓글남기기