개발자

깃,깃헙 사용법이 정확히 이해가 되지 않습니다.

2023년 03월 29일조회 155

만들어져있는 메인브랜치 외에 test1, test2, test3이라는 브랜치들을 각각 만들어서 작업을 하려고 합니다. 저에게 머지권한은 없습니다. test1 브랜치에서 작업하던 a파일을 깃헙에 push 시켜주고 main브랜치로 이동한 후 test2브랜치를 새로 만들어서 test2 브랜치로 이동하면 test1 브랜치에서 작업하던 파일들이 다 없어지더라구요. 브랜치가 다르니 없어지는건 이해를 했습니다. 이상황에서 아직 test1 브랜치가 머지가 되지 않아서 main브랜치로 pull을 못하는 상황이라고 가정을 하고, test2 브랜치에서 b파일을 작업하려면 a파일이 무조건 필요한 상황이라고 했을시에 a파일을 복사해서 붙여넣는 방법밖에 없나요??

이 질문이 도움이 되었나요?
'추천해요' 버튼을 누르면 좋은 질문이 더 많은 사람에게 노출될 수 있어요. '보충이 필요해요' 버튼을 누르면 질문자에게 질문 내용 보충을 요청하는 알림이 가요.
profile picture
익명님의 질문

답변 2

엄홍재님의 프로필 사진

1. 혹시 main 브랜치 merge 권한만 없는걸까요? 각 하위 브랜치끼리의 merge 권한은 있다면 로컬에서 test2로 test1 브랜치를 merge시키면 test1작업물을 가져올 수 있어요. 2. 아니면 test2 브랜치를 생성할 때 test1 브랜치를 기반으로 브랜치를 생성하면 될 것 같아요. 3. 체리픽이라는 기능도 있어요. 특정 커밋을 내 브랜치로 옮겨올 수 있습니다.

커리어리 AI 봇님의 프로필 사진

깃과 깃헙을 사용하면서 브랜치와 머지에 대한 이해가 아직 완벽하지 않은 것 같습니다. 여러분의 상황에서 test1에서 작업한 a 파일이 test2 브랜치에서 필요한 경우, 아래와 같은 방법을 사용할 수 있습니다. 1. test1 브랜치를 기반으로 test2 브랜치를 만들기: 먼저 test1 브랜치에서 작업한 a 파일을 커밋하고 푸시합니다. 그런 다음 test1 브랜치에서 새로운 브랜치인 test2를 만듭니다. 이렇게 하면 a 파일이 포함된 test2 브랜치가 생성됩니다. 2. git cherry-pick을 사용하여 a 파일의 특정 커밋을 test2 브랜치로 가져오기: test1 브랜치에서 a 파일을 커밋한 후, 해당 커밋의 해시를 복사합니다. 그런 다음 test2 브랜치를 체크아웃하고, git cherry-pick 명령을 사용하여 해당 커밋을 가져옵니다. 이 두 가지 방법 중 하나를 사용하면, test2 브랜치에서 test1 브랜치의 a 파일을 사용할 수 있습니다. 이렇게 하면 파일을 복사하여 붙여넣는 방법 외에도 a 파일을 가져올 수 있습니다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# 방법 1
# test1 브랜치에서 작업을 커밋하고 푸시
git checkout test1
git add a
git commit -m "작업한 a 파일 커밋"
git push origin test1

# test1 브랜치를 기반으로 test2 브랜치 생성
git checkout -b test2

# 방법 2
# test1 브랜치에서 작업을 커밋하고 푸시
git checkout test1
git add a
git commit -m "작업한 a 파일 커밋"
git push origin test1

# 커밋 해시 복사 (예: 1234abcd)

# test2 브랜치를 만들고 해당 커밋 가져오기
git checkout main
git checkout -b test2
git cherry-pick 1234abcd

커리어리 AI 봇의 답변을 평가해 주세요!

지금 가입하면 모든 질문의 답변을 볼 수 있어요!

현직자들의 명쾌한 답변을 얻을 수 있어요.

또는

이미 회원이신가요?

목록으로
키워드로 질문 모아보기

실무, 커리어 고민이 있다면

새로운 질문 올리기

지금 가입하면 모든 질문의 답변을 볼 수 있어요!