我使用Tortoise GIT。是否可以在单个本地文件夹中维护2个远程存储库?我有一个主远程存储库,然后有一个暂存远程存储库,它总是远远超过主存储库。我创建了一个本地仓库并从主远程仓库中撤出。然后我创建了一个新的分支,并试图从远程登台仓库拉出来,它给了我超过1000个冲突和3000多个修改过的文件。我如何使用togise GIT解决这个问题?
答案 0 :(得分:0)
你的问题只是对git pull
的误解。假设您的两个遥控器名为origin
和staging
,而您正在处理的分支是master
。
目前,您已master
设置为跟踪远程origin
。没关系。但现在你要发布:
git pull staging master
git pull
做什么?它将指定的分支读取到FETCH_HEAD
目录中的.git
,然后将其合并到当前分支中。这就是它所做的一切 - 在默认跟踪分支上进行获取(如果命令未指定),或者在指定分支上(如果是),则进行提取。
您正在使用暂存存储库的master
版本并将其合并到origin
存储库的master
副本中。正如您所指出的那样,staging
存储库已经远远超过' origin
存储库。因此合并冲突。
你没有做错任何事。实际上,在一个本地副本中跟踪多个存储库是git中的标准操作(在工作中,我跟踪12)。
请尝试相反(再次假设一个回购是staging
,一个是origin
,并且都使用master
分支):
git checkout -b development --track staging/master
这将检查一个名为' development'本地,将设置为跟踪您的暂存存储库的主分支。您现在可以尽可能多地在此分支上发布git pull
,知道它不会尝试将生产的master
分支合并到自身,除非您明确说明告诉它。