Critical!
- What Are Git Repos?
- Git Init
- Git Status
- The Committing Workflow
- Git Add
- Git Commit
- Git Log
Important
- Understanding the .git folder
Nice To Have
GitRepository는 깃 저장소라 할 수 있다.
깃이 잘 설치되어 있으면, 언제 그리고 어느 디렉토리에 저장소를 만들어야 하는지 깃에게 수동적으로 지시해야 한다.
깃을 사용하고 싶을 때 마다, 즉, 새로운 작업을 시작 할 때 마다, 깃에게 새로운 저장소를 생성하라고 제시해야 한다.
저장소는 우리 컴퓨터에 원하는 만큼 만들 수 있고, 각각은 독립된 이력과 컨텐츠들을 갖는다. 즉, 다수의 폴더와 다수의 프로젝트가 있을 수도 있다.
즉, 각각의 프로젝트들은 서로 연관되지 않는다.
git status: 저장소의 상태를 보고해 준다.
아직 아무런 저장소르 만드지 않아서 이러한 오류가 발생한다.
git init: 터미널에서 어느 디렉토리에 있든 새 저장소를 초기화한다.
즉, 우리가 있는 디렉토리가 새 저장소의 홈이 된다.
디렉토리를 만들고, 새 저장소를 만들고, 상태를 보았다.
위에서 새 저장소로 지정한 폴더에는, 숨겨진 파일이 생성된다.
해당 파일은 .git으로, 만약 삭제한다면 git 히스토리는 삭제된다.
이것을 삭제한다면, 저장소로의 역할도 사라지므로 git status를 입력해도 인식하지 못한다.
깃 저장소가 있을 때, 한 디렉토리 안에서 초기화해야 한다.
위에서 우리가 'FirstGit'을 저장소로 설정하였는데, 이 것은 하위 디렉토리를 포함해, 이 디렉토리 안에서 벌어지는 모든 것들을 주시한다.
저장소의 하위 폴더로 이동해 git status를 입력해도, 저장소를 인식한다.
프로젝트에서, 디렉토리안에서 변경되는 파일이나 폴더는 깃에 의해 추적된다.
현재 존재하고 있는 저장소 안에 다른 저장소를 초기화하면 안된다.
- 하위 폴더가 아닌, 다른 폴더에서 git repo를 제작하는 것이 옳다.
바탕화면이나 문서 폴더 등을 git repo로 설정해서는 안된다.
위에서 체크포인트들을 깃에서 커밋이라고 부른다.
커밋을 하는 것은, 파일을 저장하는 것과 같은 것과 같지 않다.
파일을 저장하는 것 이상으로 무언가를 만들어 나간다는 것이다.
커밋하기 전에 먼저 수정해서 파일을 저장해야 한다. 그래서 체크포인트나 저장포인트 같은 용어를 사용할 수 있다.
변경 사항을 만들면, 그것들을 묶어서 커밋할 수 있다.
위 사진을 보면, logos라는 폴더로 묶어서 4개의 파일을 커밋한다.
또한, 커밋은 다단계 과정이라는 것을 알아두어야 한다.
단순히 커밋시키는 것이 아니라, 우리가 커밋에 포함하고 싶은 특정 변경사항을 호출하는 중간단계가 있다.
예를들면 우리가 다음과 같이 7개의 변경사항(1개는 삭제, 2개는 수정, 4개는 새로만듬)이 있다고 해보자.
이렇게, 위에 3개의 파일을 그룹화 하여'새로운 맴버 추가'로 커밋할 수 있고, 밑에 4개또한 그룹화 하여 '새로운 branded navbar'로 커밋할 수 있다.
이처럼, 파일 하나당 한 번의 커밋을 하는 것이 아니라, 몇 가지를 선택하여 그 변경사항만 커밋을 할 수 있다.
git add : 다음 커밋에 포함할 변경사항들을 선택하거나 하이라이트하기 위해 사용한다.
git commit : 저장소에 체크포인트를 저장한다.
git add: 커밋하기 전에, 변경사항들을 Staging Area에 올리기위해 사용한다.
Work On Stuff : 작업을 하고
Add Changes : 그룹의 변경사항들을 추가하고
Commit : 커밋한다.
다음과 같이 파일을 작업한다.
그리고, 커밋하기전에 변경사항을 등록하기 위해서 Add를 해준다.
Add를 해주지 않으면, 깃이 추적하지 않는다.
Add를 해주면, Changes to be committed에 추가되는 것을 볼 수 있다.
그 후에, 커밋을 하면, 숨겨진 파일인 .git (Git Repo)에 업데이트를 한다.
git commit -m "MESSAGE"
- 커밋 메세지에는 그 커밋의 변경 사항들을 적어놓으면 된다.
character, online 문서를 수정해본다.
Staging Area에 올린 후, status를 본다.
Chapter1이라는 메세지를 남기고 커밋을 해 본다.
git log: 기록을 볼 수 있다.
이제, Chapter1이라는 새로운 파일을 만들고, online 문서를 수정한 뒤에 status를 보자.
git add를 해준 후, 커밋을 해보자.
log를 살펴보면 잘 된 것을 확인 할 수 있다.
이번 섹션에서 살펴보았던 개념들과 명령어들을 연습해 볼 것이다.
우리가 해야할 과제는 다음과 같다.
GitExercies
먼저, 폴더와 파일들을 만들고 파일을 수정한다.
과제에 맞게 add과 commit을 해준다.