[git] git-flow 정리

ohtt-iOS·2020년 12월 21일
0

git

목록 보기
1/2
post-thumbnail

git-flow를 어떤식으로 쓰는지 정리해둔 글입니다. (for me in the future) 😀

혹시 gitflow 에 대해서 알고싶어서 들어오셨다면,
gitflow에 대하여 <- 이 곳을 확인해주세요!

1️⃣ 프로젝트 생성

  1. 프로젝트를 생성합니다.
  2. gitignore를 생성하고, 기본적으로 필요한 라이브러리들을 설치해둔다
gitignore를 생성하는 이유?
- 파일 백업 정보, 제품 빌드 정보 등의 로컬 구성 재정이 등을 저장소에 올려놓지 않기 위해서
-> 이런 파일들을 untracked files로 설정하여 git이 이 파일들을 track하지 않도록 한다.

- 각종 noise를 방지한다.
-> 원하지 않는 파일이 upload 되는 것을 방지
-> 혹여나 발생할 수 있는 데이터 충돌로 인한 손실 방지

gitignore 생성 사이트 <- 여기에서 프로젝트에 맞는 gitignore 파일을 생성할 수 있다.

기본적으로 필요한 pod?
Alamofire / SwiftyJSON / Kingfisher / lottie 등등 ...
각자 프로젝트에 필요할 것으로 예상되는 기본적인 pod은 깔아서 공유하는 것이 올리는 것이 좋다.
  1. 협업하는 사람들의 Xcode의 버전을 확인해서 가장 낮은 사람의 것에 맞춰서 업로드
    -> 높은 사람 기준으로 하면... 낮은 사람의 xcode의 시뮬레이터 작동이 안되는 경우가 생긴다.

2️⃣ 브랜치 나누기

  1. 기본으로 main(master) 브랜치가 생긴다.
  2. main에서 dev 브랜치를 생성한다.
  3. dev에서 각자의 브랜치들을 생성한다. (feature - 기능) 혹은 (dev_각자이름) 등등

3️⃣ 각자 작업한 후

  1. readme가 있는 경로로 이동
  2. git add .
  3. git commit -m "커밋메시지"
  4. git status // 필수는 아니지만, 푸시하기전에 내가 올리고 싶은 게 맞는지 확인하는 습관!
  5. git push origin HEAD:내가작업하는브랜치명 // 이걸로하면 checkout 안해줘도 내가 작업하는 브랜치로 push된다.
    git checkout 내가작업하는브랜치명 -> git push origin 내가작업하는브랜치명

4️⃣ dev로 합칠 때

git이 익숙하지 않으신 분들은 여기서 백업을 한번 해두시는 것을 추천 드립니다
(정신 건강을 위하여 ...)

git pull origin dev

여기서 confilct가 날 수도 있고 안날 수도 있다.


confilct ❌

  1. 자동으로 내 브랜치에 dev merge가 된 파일이 깃헙에 올라가 있을것임.
  2. 깃헙으로 이동해서 pull request를 하여 dev <- 내브랜치 해주면 된다.

confilct ⭕️

1.conflict가 났다면 어떤 파일에서 conflict가 났는지 알려준다.
그 파일들을 확인하여 conflict를 해결한다.
되도록 build가 되는 것까지 확인하는 것을 추천합니다.
2. git add .
3. git commit -m "[FIX] conflict 해결"
4. git status // 위처럼 확인절차
5. git push origin HEAD:내가작업하는브랜치명

여기까지는 아까 내 브랜치에 올리는 방식과 같음.
그런 이후에
6. 깃헙으로 이동해서 pull request를 하여 dev <- 내브랜치 해주면 된다.



협업하는 방식은 팀마다 다르겠지만
commit 메시지나 git flow 방식등을 미리 정해놓고 시작하면
처음에는 조금 불편해도 이후에 매우매우 좋다 :)
profile
오뜨 삽질 🔨 블로그

0개의 댓글