Program/Github

[Github] 깃 초간단 내용 요약

heheh 2022. 4. 26. 00:34

깃이란?

프로젝트의 관리나 롤백 등을 용이하게 하기 위해 사용하는 프로그램이다.

깃을 공유하기 위해서는 깃허브깃랩등의 서비스를 사용한다.

 

 

'깃'과 이를 공유할 수 있도록하는 대표 두 서비스

 

 

 

1) 깃 간단 구조

우선 내 폴더에 프로젝트를 생성해서 코드를 구현해나간다.

이때 저번에 쓴 코드로 돌아가고 싶거나, 많은 사람이 한 프로젝트를 같이 진행하고 싶을텐데.

이걸 깃이 해결해준다.

깃을 쓰는 이유. 코드를 덩어리로 관리하지 않고 필요할 때만 합친다.

 

 

 

2) 깃의 기본 진행

- 프로젝트를 진행하며 파일을 생성한다.

- 스테이지에 올린다.

- 커밋한다.

- 원격 저장소에 푸시한다.

 

 

3) 깃의 대표 명령어

cd C:\Users\IME17\Desktop\PatternRecognition              #주어진 폴더로 이동한다
git clone https://github.com/BaekSohyeon0420/Quiz.git     #해당 폴더에 Quiz repository를 연결한다
cd Quiz   #깃허브 폴더로 이동한다
git config --global user.name "nameee"  #사용자 이름을 설정한다
git config --global user.email "namdfhake@mail.com"   #사용자 메일을 설정한다
git add .  #Quiz폴더에 생성한 파일을 올린다
git commit -m "add file"  #올라온 파일을 commit한다
git status   #commit이 잘 되었나 확인한다
git push     #저장소에 업로드한다
git branch solution   #솔루션 branch를 추가한다
git checkout solution     #branch위치를 솔루션으로 옮긴다
git branch   #확인한다
git add 20190924_Quiz1_solution.py   #해당 파일만을 솔루션branch에 올린다
git commit -m "new solution"   #올라온 파일을 commit한다
git push origin solution  #솔루션 branch와 내부 파일을 repository에 업로드한다
git branch   #branch의 위치를 확인한다
git checkout master   #branch의 위치를 마스터로 옮긴다
git branch   #branch의 위치를 확인한다
git merge solution   #솔루션을 마스터로 merge한다
git push   #저장소에 업로드한다

 

 

4) 브랜치 구조 파는 법

보통 master 브랜치 (배포용)와 develop 브랜치(개발용)를 기본 구조로 가져간다. 완전 배포중인 프로젝트는 bug 브랜치(에러 수정용)까지 사용한다.

이때 develop 브랜치와 bug 브랜치를 토픽 브랜치라고 부른다.

 

이후 추가하는 기능 별로 혹은 작업자 별로 브랜치를 develop 위에 얹는다.

추가하는 기능 위에 작업자 브랜치를 얹어도 된다.

 

검증이 되면 develop 브랜치에 진행하던 기능을 추가하고 일반적으로 해당 작업자 or 기능 브랜치는 삭제한다.

메인 브랜치는 완전 라이브용으로 왠만해선 건들지 않는다. 버전업 등의 사유가 아니라면.

 

 

5) 협업 시

pull

같은 레포지토리를 사용하며 협업을 하므로, 작업 진행 전 pull은 항상 기본으로 진행한다.

이유는 이전 작업자의 작업 내용을 그대로 가져와야 할 뿐더러, 내역이 일치하지 않으면 push도 되지 않는다. 

항상 작업자들끼리 conflict 되지 않게 주의한다.

 

커밋 문구

작업자들 간 각자의 커밋에 대해 서로 이해할 수 있도록 설명 문구를 통일한다.

대표적인 방식은 아래와 같다.

 

pull request

협업자들 간 결과를 올리기 전 얹어두는 공간이다.

풀 리퀘스트에 올려두면 코멘트를 달며 소통이 가능하다.