회사 일이 아니었으면 쓸 일이 전혀 없었던 명령어다. 상황은 이렇다.
- master로부터 checkout => refactor-components-master라는 리팩토링 용 branch 생성
- 각자 refactoring한 다음 경쟁적으로 refactor-components-master에 merge
- A라는 사람은 refactor-components-A라는 작업을 했다.
- B라는 사람은 refactor-components-B라는 작업을 했다.
- ...
- X라는 사람은 refactor-components-X라는 작업을 했다.
- 그런데 하다보니 리뷰가 늦어져서 병합이 늦어지게 된 (본인)이 refactor-components-master에 merge하려고 보니 conflict 난 파일 갯수만 100개가 넘어갔다.
여기서 100개가 넘는 conflict를 회피하는 방법을 생각해봤는데 2가지 정도이다.
1. refactor-components-master에서 체크아웃해서 처음부터 작성하기
2. refactor-components-master에서 체크아웃해서 cherrypick하기
당연히 2번이 합리적이다.
git cherry-pick [hash]
git cherry-pick [from]..[to]
'Ops, Infra, etc > 🐙 Git' 카테고리의 다른 글
Typed의 branch 운용 전략부터 코드 리뷰 문화까지 (0) | 2021.07.15 |
---|---|
ssh-keygen, ssh 프로토콜로 원격저장소 활용하기. (0) | 2021.06.25 |
git hook 사용하기 with husky v6 (0) | 2021.06.03 |
Git을 통한 협업 실제 사례 (0) | 2020.12.21 |
git log를 위한 .git/config 와 git config (0) | 2020.10.24 |