본 문서는 Git Notes for Professionals (라이센스:CC-BY-SA) 를 한글로 번역한 문서입니다. 번역상 오류가 있을 수 있으므로 정확한 내용은 원본 문서를 참고하세요.
Section 27.1: Subtree 를 생성 / Pull / Backport 하기
Subtree 생성하기
특정 plugin 프로젝트를 가리키는 plugin 이라는 이름의 새로운 원격 저장소를 아래와 같이 등록한다:
git remote add plugin https://path.to/remotes/plugin.git
그 후에 plugins/demo 이라는 새로운 폴더 prefix 를 지정한 새로운 subtree 를 생성한다. 아래 명령에서 'plugin' 부분은 원격 저장소를 나타내며, and 'master' 부분은 해당 subtree 저장소의 master 브랜치를 의미한다:
git subtree add --prefix=plugins/demo plugin master
Subtree 의 변경사항을 pull 해오기
plugin 원격 저장소에 추가된 커밋들을 아래와 같치 pull 해올 수 있다:
git subtree pull --prefix=plugins/demo plugin master
Subtree 의 변경사항을 backport 하기
- 부모 프로젝트에서 backport 할 커밋을 생성한다:git commit -am "new changes to be backported"
- merge 를 위한 새로운 브랜치를 만들고, subtree 저장소를 추적(track) 하도록 설정한다:git checkout -b backport plugin/master
- backport 들을 cherry-pick 한다:git cherry-pick -x -`-strategy=subtree master
- plugin 의 원본으로 변경사항을 push 한다:git push plugin backport:master
[출처] https://books.goalkicker.com/GitBook/ (CC BY-SA)
반응형
'번역 > Git Notes for Professionals' 카테고리의 다른 글
28.2: 로컬 및 원격 브랜치 이름 변경하기 (0) | 2020.01.13 |
---|---|
28.1: 디렉토리 이름 변경하기 (0) | 2020.01.13 |
26.13: 삭제된 stash 복구하기 (4) | 2020.01.09 |
26.12: 대화형으로 stash 하기 (0) | 2020.01.08 |
26.11: stash 되어있는 예전 변경사항들을 복원하기 (0) | 2020.01.07 |