번역/Git Notes for Professionals
27.1: Subtree 를 생성 / Pull / Backport 하기
노초코
2020. 1. 13. 22:17
본 문서는 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)
반응형