0%

git으로 협업하기1

Git 시작하기 전에

프로그래밍에 관심이 있는 사람이라면 Git에 대해 많이 들어 봤을 것이다. 하지만 Git과 GitHub는 엄밀히 다르다. git은 버전 관리 시스템이다. 로컬에서 파일 관리를 도와주는 git과 협업에서 파일 관리를 도와주는 github와 구분을 주의해야 한다.

Git Repository(저장소) 만들기

Git Repostiory를 만들 때는 두가지 방법이 있다. 첫 번째는 로컬에서 저장소를 만드는 것이고, 두 번째는 Git Hub에서 Repository를 만든 다음에 로컬로 가져오는 방법이다.

로컬에서 저장소 만들기

로컬에 임의의 파일을 만든다. git init 명령어를 사용하면 저장소가 만들어 진다.

Screenshot 2022-12-30 at 22.00.29.png

.git 이라는 하위 폴더가 생성된다. .git 에는 저장소에 필요한 파일이 들어가 있다.

기존 저장소를 Clone 하기

깃헙에서 clone할 저장소에 가면 다음과 같이 보인다.

Screenshot 2022-12-30 at 22.04.01.png

초록색으로 <>code 부분을 누르면 저장소의 주소가 나온다.

Screenshot 2022-12-30 at 22.05.07.png

git clone <url> 명령으로 저장소를 clone한다. 그러면 저장소의 데이터를 모두 가져와 가장 최신버전으로 checkout 해 놓는다.

git clone <url> <dir_name> 를 하면 다른 디렉토리 이름으로 clone 할 수 있다.

파일 관리 하기

Git에는 파일을 감지하는 시스템이 있다. 이 시스템은 파일을 관리 대상이 아닌(Untracked)상태와 관리 대상(Tracked)상태로 구분한다.

lifecycle.png

git status 명령어를 통해서 파일의 감지 상태를 확인할 수 있다.

Screenshot 2022-12-30 at 22.47.01.png

  • 초기 상태

Screenshot 2022-12-30 at 22.47.13.png

  • 새로 만든 파일은 Untracked임을 확인할 수 있다.

Stage

stage 영역은 commit 하여 저장소에 기록하기 위한 중간 상태이다.

Add

git add <file_name> 를 통해서 파일을 추적 할 수 있다.

Screenshot 2022-12-30 at 23.01.30.png

만일 stage에 있는 파일을 수정하게 된다면 modified 상태가 된다. 이 상태로 commit 하게 된다면 staged된 상태만 저장소에 기록된다.

git add . 을 통해서 모든 파일을 stage에 올릴 수 있다.

Unstage

stage영역에 들어간 것을 git reset 을 하면 취소할 수 있다.

Screenshot 2022-12-30 at 23.28.38.png

특정 파일만 취소 하려면 git reset <file_name> 을 하면 된다.

Commit

git commit 을 통해서 commit을 할 수 있다.

commit message를 남기지 않았다면 commit message를 남기라고 한다.

주석을 지우고 저장(:wq)하면 주석 지운 부분이 message가 되고 원하는 문장을 작성해도 무방하다.

Screenshot 2022-12-30 at 23.31.18.png

그냥 저장하면 commit할 수 없다.

Screenshot 2022-12-30 at 23.33.02.png

commit 할 때 원하는 message를 남기고 싶다면 git commit -m "message" 를 통해서 원하는 메시지를 남길 수 있다.

Log

git log 를 통해서 commit 기록을 볼 수 있다.

Screenshot 2023-01-02 at 13.50.26.png


여기 까지가 git 사용법의 기초이다. 다음에는 git의 코어 기능인 branch에 대해 알아보자.