소스트리에서 변경된 사항 커밋(Commit)
파일을 수정하고 소스트리를 확인해보면 다음과 같이 변하게 된다. 빨간색 부분을 자세히 보면
1. 아까와는 다르게 커밋하지 않은 변경사항이라는 텍스트가 보인다.
2. 스테이지에 올라가지 않은 파일 부분에 수정한 파일들의 목록을 확인할 수 있다.
이제 버전 관리를 위해 초록색 부분의 커밋 버튼을 누른다. 커밋을 누르면 첫 번째 사진과 같은 화면으로 바뀌게 되고 여기서 커밋을 하고자 하는 파일을 [+] 버튼을 이용해서 스테이지에 올리거나 [모두 스테이지에 올리기] 버튼을 이용해서 수정한 모든 파일을 스테이지에 올린다.
수정한 파일을 스테이지에 올렸으면 이제 진짜 커밋을 생성해야 한다. 맨 아래에 커밋 메세지를 작성하고 커밋 작성 버튼을 누르면 커밋이 생성된다. 이것은 CLI 환경에서 git commit -m "index.js API 경로 추가"와 동일하다.
커밋을 생성하면 다음과 같이 "커밋할 내용 없음"이라는 화면이 뜬다. 그리고 [히스토리]탭으로 가면 커밋 내역이 업데이트 된 것을 알 수 있다. 아직 원격 저장소에 올리는 Push 작업을 하지 않았으므로 로컬 저장소와 원격 저장소의 버전이 다른 것을 알 수 있다. 그리고 밑으로 가면 실제 커밋한 내용에 대한 정보를 확인할 수 있다. 그리고 맨 위 초록색 부분인 Push 버튼의 상태가 바뀐 것을 확인할 수 있다.
소스트리에서 커밋을 원격저장소 푸시(Push)
위에서 로컬 저장소의 버전과 원격 저장소의 버전이 다르다고 하였는데 자세히 살펴보면, 로컬 저장소 버전은 master라는 꼬리표가 붙어있고 원격 저장소 버전에는 origin/master라는 꼬리표가 붙어있다. origin은 연결한 github 원격 저장소의 별명이다.
예전에 git remote add origin github 주소 라는 명령어를 수행했었다. 이것은 origin이라는 이름으로 해당 github 주소의 원격 저장소를 추가하라는 명령어이다. 만약, git remote add orange github 주소라고 입력했으면 origin 대신 orange라는 별명이 보였을 것이다. 정리하면 origin 꼬리표는 원격 저장소의 현재 버전 상태를 가리키는 커밋에 붙어있다고 할 수 있다.
master는 커밋을 올리는 줄기의 이름이다. [히스토리]탭으로 가면 커밋이 하나의 줄기로 이어져 있는 것을 볼 수 있다. 따로 줄기를 생성하지 않으면 git은 master라는 기본 줄기에 커밋을 올리게 된다.
종합해보면 맨 처음 master는 내 컴퓨터 로컬 저장소의 버전을 그 다음 origin/master는 github 원격 저장소의 버전을 가리키는 것이다. 따라서 위 사진에서는 내 컴퓨터의 로컬 저장소의 버전은 'index.js API 경로 추가'인데 원격 저장소의 버전은 하나 이전인 'index.js 경로 추가' 상태라는 것이다.
이제 새로 생성한 커밋을 초록색 부분의 Push 버튼을 눌러 원격 저장소에 업로드해보면 다음과 같은 화면이 뜬다.
위 화면에서 master에 해당하는 체크박스를 체크하고 Push 버튼을 누르면 업로드하는 과정이 나오게 되고 업로드가 완료된다. 이 동작은 git push origin master와 동일하다. [히스토리] 탭으로 가면 원격 저장소에도 최신 커밋 상태가 반영된 것을 확인 할 수 있다.
'버전관리 > GUI 환경' 카테고리의 다른 글
6. 협업에서의 버전 관리: 브랜치(Branch) (0) | 2020.08.30 |
---|---|
5. 정리하기 - Git에서의 파일 관리 (0) | 2020.08.29 |
4. 정리하기 - SVN과 Git (0) | 2020.08.29 |
2. 소스트리에 로컬 저장소를 추가하기 (0) | 2020.08.28 |
1. 소스트리(Source Tree) (0) | 2020.08.28 |