우리는 git-subtree 프로젝트 (git 버전 1.7.9.4 사용)에서 작업하고 약간의 복잡성을 겪었습니다. foo
에git-subtree pull complications
git subtree add --prefix=foo [email protected]:foo.git master
이제이 있었다 실질적인 변화를 우리가 이상적으로 그들을 부수 파일 중에 없었다, 그 변화를 병합하고 싶습니다 : 이전에 다른 사람이 몇 달 전에이 명령을 사용하여 하위 트리를 추가했다. 수입 이후 수정되었습니다.
나는 변화를 시도하고 병합하기 위해 세 가지를 시도했다.
첫째 :
git subtree pull --squash -P foo [email protected]:foo.git master
예외가 발생합니다 : Can't squash-merge: 'foo' was never added.
둘째 :
git subtree pull -P foo [email protected]:foo.git master
이 작동을 (일종의)하지만, 커밋의 모든 당기는의 문제를 가지고 수정 된 파일과 충돌합니다.
git pull --squash -s subtree [email protected]:foo.git master
이 출력 Automatic merge went well; stopped before committing as requested
으로 내게 원하는 결과를 제공하고 (정확한 함량으로) 수정 된 모든 파일들이 보여주는 :
마지막으로,이 시도.
이상적으로는 처음으로 git-subtree
버전을 계속 사용하고 최종 버전에 가까운 출력을 얻고 싶습니다. 우리가 앞으로도 계속해서 마지막 버전을 사용해야한다면, 우리는 그렇게 할 것입니다. 그러나 중간 버전이 충돌하는 동안 왜 마지막 버전이 병합 충돌을 일으키지 않는지 조금 혼란 스럽습니다.
도움을 주시면 감사하겠습니다.
나는 끌어 내려 할 때 접두사 옵션에 하위 폴더가 누락되어서 발생하는 것으로 밝혀진 동일한 문제가있었습니다. 오류 메시지가이 오류에 대한 어떤 표시도하지 못하기 때문에 이것을 설명으로 추가하면 문제 해결이 여기에 도움이됩니다. –
감사합니다. 유용합니다. 하위 트리를 하위 트리에 추가 한 후이 하위 트리를 이동 한 관련 문제가 발생했습니다. –