내 SVN 저장소를 git svn-clone
을 사용하여 Git으로 성공적으로 마이그레이션했습니다. 그러나 git svn-clone
은 svn:externals
을 마이그레이션하지 않습니다. 그래서 git filter-branch
을 사용하여 가지 트리를 수정하기로 결정했습니다.지난 리비전에 서브 모듈을 추가하기 위해 git 리포지토리를 수정하는 방법은 무엇입니까?
svn:externals
의 경우 먼저 각 svn : externals에 대해 별도의 Git 저장소를 만들고 다음을 사용하여 시도했지만 작동하지 않았습니다.
$ git filter-branch --tree-filter "git submodule add [email protected]:myAcc/mySubmodule.git mySubmodule" HEAD
Rewrite a013a219e4294d4ee66b323cf1db9c170d90130a (1/4)fatal: working tree '.' already exists.
Clone of '[email protected]:myAcc/mySubmodule.git' into submodule path 'common' failed
tree filter failed: git submodule add [email protected]:myAcc/mySubmodule.git mySubmodule
rm: cannot remove `c:/myRepo/.git-rewrite/revs': Permission denied
rm: cannot remove directory `c:/myRepo/.git-rewrite': Directory not empty
어떤 방법을 생각 하나? 많은 감사드립니다.
는 자식 submodules' 정확히 SVN'의 동등한없는'잊지 마세요 : 외관을 ': http://stackoverflow.com/questions/3131912/why-are-git-submodules-incompatible-with-svn-externals/3132221#3132221 – VonC
경고를 보내 주셔서 감사합니다. 나는'자식 서브 모듈'이 실제로 커밋을 가리킨다는 사실을 간과했다. 이 경우 확실하지 않아, 그것은 나를위한 옵션입니다. 한 번 업데이트 할 때마다 하위 모듈을 HEAD로 지정하고 싶습니다. – shadangi