브랜치를 master
브랜치로 시작한 GitHub 레포가 있는데, 많은 코드를 푸시했습니다. 그런 다음 내 컴퓨터에서 로컬로 git checkout -b development
을 통해 development
브랜치를 만들고 푸시했으나 (git push origin development
을 통해) 밀어 넣었습니다 (단지 master
과 development
이 이제 동일 함을 의미).여러 master 브랜치를 git/GitHub에서 서로 병합합니다.
는 또 다른 개발자는 (최신이었다)에 development
지점의 오프 fizzbuzz
기능 분기를 만들을 가정, 대신 master
오프를 만들었습니다. 그녀는 이제 fizzbuzz
브랜치를 GitHub에 푸시했습니다.
궁극적으로 fizzbuzz
을 development
으로 병합하여 CI 빌드 및 DEV 배포를 시작합니다. 그런 다음 나중에 development
을 master
에 병합합니다.
하지만 fizzbuzz
이 master
이 아니고 development
이 아니기 때문에 가능하지 않다고 생각합니다. 그렇지? 그리고 그렇지 않다면, 해결책은 무엇입니까? 그녀가 fizzbuzz
을 development
의 지사로 "재배치"할 수있는 방법이 있습니까? (그렇다면 명령은 무엇입니까?) 또는 다른 대체 방법이 있습니까?
감사합니다. @kfb (+1) - '리베이스'가 필요하다고 생각했지만 이전에는 사용하지 않아도되었습니다. 빠른 후속 질문은 괜찮 으면, 이해하겠다는 것입니다. "* *는"fizzbuzz "을"개발 "*에 리베이스 (rebase) 할 것이라고 말하면,"development "를 분지 한 것처럼 보일 것입니다. 처음부터? 그리고 이것이 동일하거나 깨끗한 경우에만 작동합니까? '개발'에 실수로 분기 된 '마스터'가있을 때 거기에 없었던 새로운 코드가 있으면 어떻게 될까요? 다시 한 번 감사드립니다! – smeeb
예,'fizzbuzz'가 항상'development'에서 분기 된 것처럼 보일 것입니다. 귀하의 두 번째 질문에 관해서는, 대답은 "그것은 다릅니다"입니다. [이 링크] (https://git-scm.com/book/en/v2/Git-Branching-Rebasing)는 일반적으로 리베이스 (rebase)에 대한 정보를 제공해야하며 [this link] (https : //help.github. co.kr/articles/resolving-merge-conflicts-a-git-rebase /)는 충돌이 발생할 경우 어떻게되는지에 대해 이야기합니다. – kfb