02-1 깃 저장소 만들기
깃 초기화하기 - git init
홈 디렉토리에 hello-git 디렉토리를 만들고, hello-git 디렉토리에 git init 명령을 입력한다. 이는 깃을 사용할 수 있도록 디렉토리를 초기화하는 것이다. Initatlized empty Git repository in ~ 이 뜨면, 이 디렉토리에서 깃을 사용할 수 있다는 것이다.
윈도우 탐색기 > 보기 > 숨긴 항목을 체크하면 깃 폴더가 생성되어있는 것을 확인할 수 있다.
02-2 버전 만들기
깃에서 버전이란
최종, 최종_최종, 최종_진짜최종, 최종_진짜최종_최종... 등 파일을 수정할 때 파일 이름을 바꿔서 저장해야 한다. 그러나 수많은 수정 내용을 모두 보관하기엔 어렵고, 어떤 파일에서 어떤 내용을 수정했는지 알 수 없을 것이다. 파일을 다른 이름으로 저장하여 버전을 만드는 것보다, 깃을 통해 버전을 관리하는 것이 어떤 파일에서 어떤 내용을 수정했는지 등 파일 관리를 더 쉽게 할 것이다.
스테이지와 커밋 이해하기
깃이 파일 이름을 유지하며 수정 내역을 기록하는 것은 가상의 개념을 통해 이루어진다.
1. 작업 트리 2.스테이지 3.저장소의 개념으로 이루어져있다. 이 중 2, 3은 .git 디렉토리에 해당하는 것이다.
1. 작업 트리: 파일 수정, 저장 등의 작업을 하는 디렉토리로 작업 디렉토리라고도 부른다. 앞서 만든 hello-git 디렉토리가 작업 트리이다. 즉, 우리 눈에 보이는 것이다.
2. 스테이지: 버전으로 만들 파일이 대기하는 곳이다. 스테이징 영역이라고도 부른다.
3. 저장소: 스테이지에서 대기하고 있던 파일들을 버전으로 만드는 곳이다. 리포지토리라고도 불린다.
작업 트리에서 빔으로 문서 수정하기
책에 있는 내용을 그대로 따라갔다.
수정한 파일을 스테이징하기 - git add
책에 있는 내용을 그대로 따라갔다.
스테이지에 올라온 파일 커밋하기 - git commit
책에 있는 내용을 그대로 따라갔다.
스테이징과 커밋 한꺼번에 처리하기 - git commit -am
책에 있는 내용을 그대로 따라갔다.
02-3 커밋 내용 확인하기
커밋 기록 자세히 살펴보기 - git log
1. 커밋 해시 : 커밋을 구별하는 아이디
2. 작성자
3. 버전 만든 날짜
4. 커밋 메시지 : 작성자가 기록한 커밋 메시지
5. 커밋 로그 : 1~6을 묶어 부르는 것
6. 최신 버전 : HEAD -> master == 이 버전이 가장 최신이라는 표시
변경 사항 확인하기 - git diff
git diff를 이용하여 수정된 내용이 무엇인지 비교할 수 있었다.
02-4 버전 만드는 단계마다 파일 상태 알아보기
tracked 파일과 untracked 파일
역시 교재를 그대로 따라하였다.
unmodified, modified, staged 상태
unmodified : workinig tree clean. 수정되지 않은 상태
modified : Changes not stage for commit. 수정만 된 상태
staged : git add 명령을 사용. Changes to be commited. 커밋 직전, 스테이지드 상태.
** git commit -m "수정 내용" : 수정한 내용이 무엇인지 메모
*** git commit --amend : 커밋 만든 즉시 커밋 메시지 수정
02-5 작업 되돌리기
작업 트리에서 수정한 파일 되돌리기 - git checkout
스테이징 되돌리기 - git reset HEAD 파일 이름
교재와는 다르게, git restore --staged 파일으로 작성되어있는 것을 확인하였다.
git reset HEAD와 git restore --staged가 어떤 차이가 나는 것인지에 대해서는 더 연구해봐야 할 것 같다.
최신 커밋 되돌리기 - git reset HEAD^
특정 커밋으로 되돌리기 - git reset 커밋 해시
우클릭하여 복사를 누른 뒤, 커밋의 해시를 복사하라고 하였으나 실행 시 우클릭만 해도 자동으로 복사가 되었다. 사진 속에 그 흔적이 남아있다. reset 기능을 통하여 원하는 커밋을 최신 커밋으로 만들었다.
커밋 삭제하지 않고 되돌리기 - git revert
git revert가 실패하였다. 파일을 새로 제작한 뒤, 다시 시도하여 문제점과 해결책을 추후 추가하겠다. 현재의 나는 이겨내지 못했지만, 미래의 나는 이겨낼 것이니까.
이상으로 2장 스터디노트를 마친다.
'Do it!' 카테고리의 다른 글
[004] Do it! 지옥에서 온 문서 관리자 깃&깃허브 입문 (0) | 2021.07.05 |
---|---|
[003] Do it! 지옥에서 온 문서 관리자 깃&깃허브 입문 (0) | 2021.07.04 |
[001] Do it! 지옥에서 온 문서 관리자 깃&깃허브 입문 (0) | 2021.06.17 |
댓글