소스트리를 실행하고 상단 탭에서 [Add] 버튼을 클릭합니다.
[탐색] 버튼을 누르고 [iTshirt-cat] 폴더를 찾아 [폴더 선택]을 클릭합니다.
폴더가 잘 추가되었으면 [추가] 버튼을 눌러줍니다.
[iTshirt-cat] 로컬저장소에서 버전 고나리를 할 수 있는 새로운 탭이 열렸습니다. 좌측 사이드바에서 [History]를 클릭하면 우라가 0장에서 만들었던 커밋이 그래프로 예쁘게 보입니다!
'Visual Studio Code' 실행
파일 - 폴더열기 클릭
[iTshirt-cat] 폴더 선택하고 [폴더 선택]를 클릭합니다.
[iTshirt-cat] 폴더가 열렸습니다. 왼쪽 탐색기 패널 중간에 있는[ITSHIRT-CAT]이라는 폴더이름을 누르면 현재 폴더에 어떤 파일들이 있는지 볼 수 있습니다. 0장에서 만들었던 README.txt파일이 보일것입니다.
이제 비주얼 스튜디오 코드에서 직접 파일을 만들어 보겠습니다. [ITSHIRT-CAT] 폴더명 위에 있는 [새파일] 아이콘을 누르면 새파일을 만들 수 있습니다.(메뉴에서 [파일-새파일] 로도 만들수있음). 티셔츠 리스트가 담길 파일인 'tshirt-list.md'라고 적고 Enter를 눌러주자.
[tshirt-list.md] 탭이 새로 열립니다. 여기에 다음과 같은 내용을 적어주고 Ctrl + S 를 눌러 저장합니다.([파일-저장]). 이 파일은 'README.txt' 파일이 저장되어 있는[iTshirt-cat] 폴더에 저장됩니다. 파일이 저장되면 [tshirt-list.md] 탭에 있던 동그라미 아이콘이 x 아이콘으로 바뀝니다.
소스트리에 돌아오면 아까와는 다르게 그래프 최상단에 '커밋하지 않은 변경하항' 텍스트가 보입니다.
이 텍스트를 선택하면 소스트리 하단의 [스테이지에 올라가지 않은 파일] 섹션에 우리가 방금 새로 만든 feature-list.md와 thisrt-list.md 파일이 보이는 걸 확인할 수 있습니다. README.txt 파일이 보이지 않는 이유는 직전에 만든 커밋과 비교했을 때 아무 변화가 없었기 때문입니다. 기존 커밋에 비해 새로 만들었거나 수정했거나 삭제한 파일은 모두 이 곳에 보입니다.
소스트리 상단의[커밋] 아이콘을 누르면 뷰가 바뀝니다(다음 그림처럼 보이지 않는다면 아이콘을 눌러서 [스테이지 뷰 나누기]로 바꿔주세요). 그 다음에는 feature-list.md 오른쪽에 있는 [+] 아이콘을 클릭하세요.
그러면 이 파일이 위 섹션인 [스테이지에 올라간 파일]로 올라갑니다. 이것은 Git Bash 창에서의 'git add feature-list.md' 명령어와 동일합니다.
tshirt-list.md도 파일이 커밋을 만들기 위한 후보로 선택되었습니다.
커밋메시지 '티셔츠, 기능 리스트 추가' 라는 메시지를 적어줍니다.
왜 수정했는지, 어떤 부분이 바뀌는지에 대한 간략한 설명을 달아주는게 좋습니다.
커밋이 성공적으로 완료되었습니다. 작업공간에 더 이상 수정했던 파일이 없기 때문에 '커밋할 내용 없음' 이라는 텍스트가 보일것입니다. 비주얼 스튜디오 코드로 돌아가서 파일을 더 고치면 여기에 새로운 파일들이 더 보일 것 입니다.
커밋이 잘 만들어졌는지 확인하기 위해서는 좌측 사이드바에서 [History] 탭을 눌러 커밋 그래프를 확인합니다. 방금 만들었던 '티셔츠, 기능 리스트 추가' 커밋이 잘 추가된 것을 확인할 수 있습니다. feature-list.md 파일과 tshirt-list.md 파일에 어떤 변경이 일어 났는지도 보입니다.
소스트리의 그래프를 자세히 보면 최신 커밋인 '티셔츠, 기능 리스트 추가' 왼쪽에는 [master]라는 꼬리표가, 하나 이전 버전인 '개발자 목록 추가' 커밋 왼쪽에는 [origin/master]라는 꼬리표가 붙어 있습니다. 이는 매우 중요한 의미를 담고 있는데, 내 컴퓨터의 로컬저장소의 버전은 '티셔츠, 기능 리스트 추가'인데 반해 원격저장소의 버전은 하나 이전의 버전인 '개발자 목록 추가' 상태라는 것입니다.
새로 만든 커밋을 원격저장소에 업로드해보자. [Push] 버튼을 클릭하고, 팝업 창에서 [master] 옆의 체크박스를 체크합니다. 그리고 [Push]를 클릭합니다.
업로드 하는 과정이 잠시 이어지고 완료됩니다. 이 명령은 현재 줄기인 master의 모든 새로운 커밋을 원격저장소에 올리겠다는 말입니다. 이 동작은 Git Bash 창에서의 'git push origin master' 명령어와 동일합니다.
로컬저장소의 [master]와 원격저장소의 [orgin/master] 모두 최신 커밋인 '티셔츠, 기능 리스트 추가' 를 가리키고 있는 것을 확인할 수 있습니다. 푸시가 성공적으로 완료되었습니다.