Gitlab 다른 Repository 브랜치 가져오기 - 🍒cherry-pick

epiphany·2025년 3월 21일

🍒cherry-pick

  • 다른 브랜치에 있는 Commit들 중에서 원하는 것만 가져오는 명령어

model repository에 생성한 test 브랜치 작업을 model2로 가져오기 위해 작업 진행

사용 방법

  1. 내가 push하려는 repository에서 git bash를 연다.

git remote add {약칭} {commit을 가져오기 위한 repository 주소}

git fetch {약칭}

git log model/master

master가 아닌 다른 브랜치 로그를 보고싶다면 해당 브랜치명을 입력해주면 됨

로그를 보고 원하는 commit id를 확인

git cherry-pick {commit id}

git push origin master

master가 아닌 다른 브랜치에 적용하려면 해당 브랜치명을 입력해주면 됨

실제 사용 예시


sofia@.. /c/Gitlab/model2 (test)
$ git remote add model https://gitlab.com/model.git

sofia@.. /c/Gitlab/model2 (test)
$ git fetch model
remote: Enumerating objects: 440, done.
remote: Counting objects: 100% (56/56), done.
remote: Compressing objects: 100% (56/56), done.
remote: Total 440 (delta 25), reused 0 (delta 0), pack-reused 384 (from 1)
Receiving objects: 100% (440/440), 92.05 KiB | 18.41 MiB/s, done.
Resolving deltas: 100% (294/294), done.
From https://gitlab.com/model
 * [new branch]      a   -> model/a
 * [new branch]      b  -> model/b
 * [new branch]      c  -> model/c
 * [new branch]      temp -> model/temp
 * [new branch]      master           -> model/master
 * [new branch]      test2             -> model/test2
 * [new tag]         v1.1.0           -> v1.1.0
 * [new tag]         v1.2.0           -> v1.2.0
 * [new tag]         v1.3.0           -> v1.3.0

sofia@.. /c/Gitlab/model2 (test)
$ git log model/test
commit de94... (model/test2, model/test)
Author: sofia <sofia@github.com>
Date:   Mon Dec 30 16:19:21 2024 +0900

    Changelog: removed

commit eabc...
Merge: 3178a57 32e9b95
Author: sofia <sofia@github.com>
Date:   Mon Dec 23 12:15:53 2024 +0900

    Merge branch 'temp' into test

commit 32e9... (model/temp)
Author: sofia <sofia@github.com>
Date:   Mon Dec 23 12:15:44 2024 +0900

    Changelog: changed
...skipping...

commit de94... (model/test2, model/test)
Author: sofia <sofia@github.com>
Date:   Mon Dec 30 16:19:21 2024 +0900

    Changelog: removed

commit eabc...
Merge: 3178a57 32e9b95
Author: sofia <sofia@github.com>
Date:   Mon Dec 23 12:15:53 2024 +0900

    Merge branch 'temp' into test

commit 32e9... (model/temp)
Author: sofia <sofia@github.com>
Date:   Mon Dec 23 12:15:44 2024 +0900

    Changelog: changed


sofia@.. /c/Gitlab/model2 (test)
$ git cherry-pick de94...
[test ...] 필드 제거
 Date: Mon Dec 30 16:19:21 2024 +0900
 3 files changed, 33 insertions(+), 3 deletions(-)
 create mode 100644 python/alembic/versions/...

sofia@.. /c/Gitlab/model2 (test)
$ git push origin test
Enumerating objects: 16, done.
Counting objects: 100% (16/16), done.
Delta compression using up to 16 threads
Compressing objects: 100% (6/6), done.
Writing objects: 100% (9/9), 1.29 KiB | 1.29 MiB/s, done.
Total 9 (delta 7), reused 4 (delta 3), pack-reused 0 (from 0)
remote:
remote: To create a merge request for test, visit:
remote:   https://gitlab.com/model2/-/merge_requests/new?merge_request%5Bsource_branch%5D=test
remote:
To https://gitlab.com/model2.git
   b557..34a7  test -> test

참고 사이트

profile
iamda.tistory.com 이사 중

0개의 댓글