programing

다른 분기에서 변경 사항을 가져오는 방법

css3 2023. 7. 4. 22:02

다른 분기에서 변경 사항을 가져오는 방법

현재작중다니입에서 .featurex분점. 마스터 의 이름은 마터브이 름은의치랜스이름은▁is▁named입니다.our-team작업을 시작한 이후로featurex분기에 추가 변경 사항이 있습니다.our-team.

최신 변경 사항을 모두 얻기 위해 로컬에서 이 작업을 수행했습니다.our-team:

git checkout our-team
git pull

가 전에기를 누르기 에.featurex을 받고 싶습니다.our-team로분다하로 featurex모든 것이 예상대로 작동하는지 확인할 수 있습니다.

내가 어떻게 그럴 수 있을까?

이 지침을 따르기 전에 다음 사항을 명심하십시오.featurex입니다.

  1. featurex

    git checkout featurex
    
  2. our-team로분다하로 featurex

    git merge our-team
    

    또는

    git cherry-pick {commit-hash}
    

    특정 커밋을 병합하려는 경우.

후 해야 할 입니다.our-team로분다하로 featurex밀기 전에 가지를 치다.

예를 들어, rebase를 사용할 수 있습니다.git rebase our-team당신이 지점에 있을 때featurex.

분기의 시작점을 끝으로 이동합니다.our-team 기분, 병변항사의 사항 featurex분점.

git fetch origin our-team

또는

git pull origin our-team

그러나 먼저 업데이트할 지점(featurex)에 이미 있는지 확인해야 합니다.

분기를 병합하거나 재배치하는 두 가지 옵션이 있습니다.둘 다 다르게 작동하지만 결과는 비슷합니다.

허용된 답변은 기본 재배치입니다.이 작업을 수행하는 데 필요한 모든 커밋our-team 그런 다음 수행된 커밋을 적용합니다.featurex필요에 따라 병합하라는 메시지가 표시됩니다.

기본 재배치의 한 가지 주의 사항은 분기 기록이 손실되거나 다시 작성된다는 것입니다. 기본적으로 분기가 커밋 123abc에서 시작된 것이 아니라 커밋 456cde에서 시작되었다는 것을 git에 알립니다.이것은 지점에서 일하는 다른 사람들에게 문제를 일으킬 것이고, 일부 원격 도구들은 그것에 대해 불평할 것입니다.하지만 당신이 무엇을 하고 있는지 확신한다면, 그것이 바로 그것입니다.--force깃발은 에 대한 것입니다.

다른 포스터들이 제안하는 합병입니다.이 작업은 다음 작업을 수행됩니다.featurex인 기분과 .our-team에 하나,됩니다.our-team은 당신이 다▁applying것▁the니를 적용하고 있다는 것입니다.featurex앞의 약속.our-team새 커밋을 수행한 다음 차이점을 수정합니다.또한 기록을 다시 작성하지 않고 이전 기록을 다시 작성하는 대신 하나의 커밋을 추가합니다.

두 옵션 모두 유효하며 동시에 작동할 수 있습니다.일반적으로 기능 분기에 대해 수행되는 작업(예: git-flow와 같은 광범위한 도구 및 방법론을 사용하는 경우)은 기본 분기로 병합하고 종종 병합 요청을 통해 하나 또는 여러 병합 커밋으로 발생하는 모든 충돌을 해결하는 것입니다.

재배치는 최종적으로 병합을 수행하기 전에 분기를 수정하고 하나의 큰 병합 커밋을 수행해야 하는 고통을 덜어주는 흥미로운 옵션입니다.

거의 다 왔어요 :)

남은 일은 …하는 것뿐.

git checkout featurex
git merge our-team

이것은 우리 팀을 featex로 통합할 것입니다.

위에서는 기능x의 변경 내용을 이미 커밋/저장했다고 가정합니다. 그렇지 않은 경우 먼저 이 작업을 수행해야 합니다.

누군가 git pull을 사용하지 않고 변경 사항을 끌어내는 방법을 스스로에게 묻는 경우 - git pull은 먼저 git fetch를 실행한 다음 git fetch + merge와 같은 두 시퀀스의 조합을 구성하기 때문에 git merge를 수행합니다.다른 지점에서 변경사항을 가져오지 않고 변경사항만 적용해야 하는 경우:

git checkout <branch with changes wanted> 
git checkout -b <new branch> 

언급URL : https://stackoverflow.com/questions/37709298/how-to-get-changes-from-another-branch