일반적인 시나리오는 변경 사항을 밀어 전에 풀을 할 것입니다. 하지만 커밋의 현재 조상이 마지막으로 꺼낸 이후 (즉, 다른 모든 커브가 아직 푸시하지 않은 경우), 병합이 필요하지 않으며 필요없이 변경 사항을 푸시 할 수 있습니다. 당겨.
다른 누군가가 변경 사항을 푸시 한 다음에는 항상 변경 사항을 자신의 것으로 가져와야합니다 (git이 병합 커밋이라고하는 것을 만듭니다. 이는 일반적인 방법으로 작성되지 않은 커밋입니다. git add, git commit 등). 이제 저장소가 최신 변경 사항과 동기화되고 중앙 저장소를 안전하게 동기화 할 수 있습니다.
이 경우 처음부터 가져와야합니다. 즉, 두 저장소의 버전이 같으므로 C를 덮어 쓰지 않습니다 (두 repos 모두에서 B 만 변경).
git에서 병합해야하는 두 개의 분기 버전이있는 B의 경우 충돌이있을 수 있습니다. 그러나 이것은 정확히 pull이 무엇인지, 가져 오기 (저장소를 동기화) 및 원격 분기를 추적하는 로컬 분기 간의 병합입니다 (예 : 저장소). 마스터가 origin/master와 병합됩니다.
마지막으로 A와 동일한 문제가 발생합니다. 수정 된 A가 동일한 버전 (동일한 모양)에서 수정되었으므로 A에 대한 첫 번째 repo에서 변경된 사항은 다른 저장소에서 A로 간단하게 병합됩니다. 다른 레포에서.
희망 사항을 확인해주세요.
건배!
먼저 끌어 오기를 수행해야한다면 밀어 넣기가 실패합니다. –