본문 바로가기
Lecture/Git

[2-DAY] 깃 시작부터 커밋까지 명령어와 예제

by 손프로 2022. 9. 20.

<교육을 들으며 혼자 정리한 내용으로 지식습득을 목적으로 읽기에는 정확하지 않은 정보가 있을 수 있음>

 

깃으로 협업을 하게되면 여러 사람들의 프로젝트가 합쳐지기 때문에

누가 작업했는지를 확인할 수 있는 작업이 꼭 필요하다.

설정하는 내용으로는 이름과 이메일이 있으며 명령어는 아래와 같다

 

1. 깃 이름 설정

git config user.name	#설정된 유저명이 있는지 확인
git config --global user.name "name"	#name으로 유저명 설정

git config user.email	#설정된 이메일이 있는지 확인
git config user --global user.email "e-mail"	#e-mail으로 이메일 설정

- 이름과 이메일명은 github와 동일하게 하는게 좋다고 하니 참고

 

2. 깃 커밋 과정

이제 본격적으로 git을 사용하는 단계로 들어간다

git은 먼저 프로젝트를 추적하고 저장하기위해 git init 명령어로 저장소 초기화 작업을 해야한다.

초기화되면 숨김폴더로 .git이 생성되며 이는 ls -a 명령어로 확인 가능하다.

 

해당 작업은 프로젝트당 한번 실행되고 이로서 드디어 프로젝트에서 깃을 사용할 수 있게 된다.

주의할 점으로 깃은 저장소가 초기화된 폴더 안의 모든 것을 추적 하기 때문에

기존에 저장소가 초기화 돼있는 폴더에서 또 초기화 되지 않도록 git status로 초기화 전 확인해주는 것이 좋다.

 

커밋 명령어를 시작하기 앞서 깃의 커밋 과정을 먼저 알아봐야한다.

저장소가 초기화된 폴더안에서 깃은 간단히 세가지 공간으로 나눌 수 있다

커밋 과정

Working Directory

    - 저장소가 초기화된 폴더 안에 실제로 내가 작업 중인 파일들이 있는 폴더로 Stage에 올라가기 전엔

      상세하게 추적하지 않고 변화가 있는 파일인지 아닌지 정도만 파악한다

        때문에 실제로 git add하기 전 git status로 확인해보면 untraked file이라고 나온다

 

git add

    - 커밋을 대기하는 Stage로 상태를 변경하는 명령어로 커밋하기 전 변경사항들을 그룹화 하는 것도 가능하다

      ex) 레시피라는 파일 3개를 생성하고, 재료라는 파일 2개를 생성 후 따로 커밋하고 싶으면 레시피 파일 3개와 재료 파일 2개를

            따로 add하여 커밋을 나눌 수 있다.

    - git add file1 file2 로 사용하며 git add . 와 같이 마지막에 .(dot) 추가 시 변경된 내용 전체를 스테이지에

     올리는 것도 가능하다

 

Stage

    - 해당 부분에 올라가 있는 변경사항들은 commit 시 git 업데이트에 반영된다

 

git commit

    - 버전관리에 핵심이 되는 부분으로 체크포인트가 만들어지는 명령어라고 생각할 수 있다.

    - 프로젝트는 커밋지점으로 돌아가고, 비교하고, 병합되는 등의 작업이 이루어진다.

    - 커밋 시 git commit -m "aa" 로 커밋내용과 같이 커밋 가능하다

 

Repository(.git)

    - 처음 init명령어로 초기화 된 저장소로 프로젝트별 개별적으로 생성 가능하다

 

3. 예제

1. study폴더 안에 ex라는 빈 폴더로 이동하여 init을 하기 위한 폴더를 정한다

2. 해당 폴더에 저장소 초기화가 돼있는지 git status로 확인 (결과 : not a git repository)

3. git init 으로 저장소를 초기화 

4. 이후 한번 더 git status로 빈 폴더와의 차이를 확인

    해당 부분에서 ls -a 명령어로 확인 시 .git 이라는 숨겨진 폴더가 생긴 것을 확인할 수 있다.

 

5. 저장소가 초기화된 폴더에 임의로 빈 텍스트파일 3개를 생성

6. 다시 git status로 확인해보면 위 설명과 같이 아직 상세히 추적은 되지 않는 새로운 파일이 생긴 것을 알려준다

 

7. git add로 file1과 file2 만 Stage에 올린다

8. file3의 경우 여전히 추적되지 않고 있으며 커밋 준비된 상태에는 file1과 file2만 존재하게 된다

    해당 상태로 커밋할 경우 두 개의 파일만 커밋되게 된다.

 

9. git commit -m "test" 로 커밋 하였으며 file1과 file2만 커밋된 것을 확인할 수 있다.

10. git add 하지 않았던 file3은 커밋되지 않은 상태

11. add .(dot) 명령어 복습을 위해 file4를 만들어 남은 file3과 한번에 add를 진행

12. 나머지 파일들도 커밋

 

13. 마지막으로 git log로 확인해보면 file1과 file2가 커밋된 test

       file3과 file4가 커밋된 test2가 나누어져 커밋된 것을 확인할 수 있다

'Lecture > Git' 카테고리의 다른 글

[6-DAY] stash와 이전 커밋 확인  (0) 2022.10.03
[5-DAY] merge  (0) 2022.09.26
[4-DAY] branch  (0) 2022.09.25
[3-DAY] 깃 명령어 옵션과 gitignore  (0) 2022.09.21
[1-DAY] git 과 github의 차이, 윈도우 깃 설치 방법  (5) 2022.09.20

댓글