티스토리 뷰

Git Repository

Git Repository(=Git Repo)깃 저장소로 깃 저장소는 그 프로젝트의 이력을 갖고 있는 깃 작업 공간이다.

 

먼저 Git으로 관리할 디렉토리를 생성하고 생성한 디렉토리로 이동해 주자.

$ mkdir MyMusician
$ cd MyMusician

 

Git Repo 생성

먼저 git status 명령어는 현재 git 저장소의 상태를 보고해 주는 명령어이다.

$ git status

명령어를 실행해보면 git repository가 아니라고 나온다.

 

이제 현재 디렉토리에 Git 저장소를 생성하자.

$ git init

현재 디렉토리에 Git Repository가 생성되었다.

 

ls -a 명령어로 확인해 보면. git 디렉토리가 생겼다.

 

git 저장소를 만들고 다시 git status를 실행하면

현재 main 브랜치고, 아직 커밋이 없다고 나온다.

 

Git 워크플로우

본격적으로 Git을 사용해보기 전에 git의 워크플로우에 대해 알아보자.

 

Git에는 세 가지 공간이 있다 

1. Working Directory - 작업 디렉토리

2. Staging area - 스테이지

3. Repository - 저장소

 

먼저 Working Directory는 프로젝트에서 실제로 작업을 하는 공간이라고 생각하자. 파일을 생성하고 변경하면 먼저 Working directory에서 작업하게 된다. 그리고 Working directory에서 생성하고 변경한 내용을 변경 사항이라고 보자. 이 변경 사항들은  git add 명령어를 통해 Stage Area에 올릴 수 있다. Stage는 커밋하기 전에 변경사항을 등록하는 공간이고 Stage에 올라간 파일들은 staging상태가 된다. Staging 상태의 파일은 git commit 명령을 통해 Git Repository(저장소)에 올라간다.

 

글만으로는 이해하기 힘드니 직접 해보면서 살펴보자.

 

 

Staging Area에 추가하기 ( git add )

먼저 MyMusician디렉터리에 파일을 생성하자

touch ladygaga.txt
touch michael-jackson.txt

 

그리고 git status를 통해 저장소의 상태를 확인해 보자

방금 생성한 두 개의 txt파일이 Untracked files라고 나온다. Untracked files는 추적되지 않는 파일. 즉, 버전 관리가 되지 않는 파일을 뜻한다. 

그럼 ladygaga.txt파일을 추적하도록 해보자.

 

git add 명령어로 ladygaga.txt 파일을 Stage에 올리자.

$ git add ladygaga.txt

git status로 확인해 보면 위와 같이 나오는데 new file인 ladygaga.txt가 스테이지에 올라갔다는 의미이다. michael-jacson.txt는 아직 올라가지 않았다.

 

 

저장소에 커밋하기 ( git commit )

그럼 Stage에 있는 파일을 git commit명령어로 Commit 해보자.

git commit -m "커밋 메시지"

스테이지에 있던 ladygaga.txt가 정상적으로 Git 저장소에 올라간 상태이다. 이제 ladygaga.txt는 깃에 의해 추적되며 버전 관리가 된다.

michael-jackson.txt는 아직 추적되지 않는 상태로 남아있고 버전 관리가 되지 않는다.

 

커밋 조회하기 ( git log )

위에서 커밋을 했으니 커밋 내역을 조회해 보자. 

git log 명령어를 사용한다.


michael jackson.txt도 commit 해보자.

위의 ladygaga.txt를 커밋할 때와 다른 점은 git commit 명령어를 옵션 없이 사용했다는 것인데 -m 옵션 없이 git commit만을 사용하면 에디터를 이용해 커밋 메시지를 작성할 수 있다. 이 방법은 다음에 포스팅하겠다. 링크

 

그리고 git status를 실행하면 

커밋할게 없고 워킹 트리가 깨끗하다고 한다. 즉, 변경된 모든 것들을 깃이 추적하고 업데이트했다는 뜻이다.

 

이제 ladygaga.txt 파일을 변경해 보자.

 

ladygaga.txt파일에 글을 쓰고 저장한 후 git status로 확인해 보자.

ladygaga.txt가 modified 되었다고 나온다. (michael-jackson.txt는 변경사항이 없기에 나오지 않는다.)

git이 이 파일을 추적하고 있다는 것!

 

그럼 변경사항을 깃 저장소에 반영해 보자.

먼저 스테이지에 올리자.

커밋될 변경사항 ladygaga.txt modified 확인

 

스테이지에 올렸으면 git commit으로 저장소에 커밋해 주자.

 

git status와 git log를 실행해 확인해 보자.

 

지금까지 Git Repository (깃 저장소)에 파일을 저장하고 변경사항을 추적하는 기본적인 방법에 대해 알아보았다.

'기타 개발 관련 > Git' 카테고리의 다른 글

Git) Commit Message를 VSC(Visual Studio Code)로 작성하기  (0) 2023.01.02
Git) Git이란?  (0) 2023.01.01
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/09   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
글 보관함