我们有一个基于git-flow的代码仓库,在开发分支上使用Atlassian SourceTree的git subtree将一个外部库作为子模块添加进去。
Project/
Library/
X/
Y/
Z/
后来我们执行了git flow release
,将develop分支合并到主分支(master/release)。
问题出在切换到主分支(master)时,Library的内容被放置在了仓库的根目录下而不是Library文件夹内,就好像在合并过程中失去了git subtree
前缀。
Project/
X/
Y/
Z/
有什么想法是出了什么问题吗?
git remote add $PROJECT_NAME $GIT_URI; git subtree add --prefix=$PROJECT_PATH $PROJECT_NAME $PROJECT_BRANCH
目前为止一切顺利。然而,下一次运行git pull # (no explicit remote or branch)
第二个远程仓库的内容也被拉到了我的主项目根目录中。我怀疑这与git远程跟踪选项有关,因为任何远程都被视为有效的对等方,并且...它们都被拉取了。 我的git配置文件中写着:fetch = +refs/heads/*:refs/remotes/$PROJECT_NAME/*
我认为就是这个原因。 - dman