git:改变回购后,如何获得新的差异?

时间:2013-10-25 15:43:57

标签: git

我在一周之前更改了.git/config中的回购IP(回购B)。

今天我再次将IP更改为最旧的(回购A),然后我运行git st,我预计在运行git st后,它显示了我的本地机器项目与最老的回购A,但它仍然显示与回购B相关的差异..

1 个答案:

答案 0 :(得分:1)

Git状态(听起来你有别名为git st)并不会将工作副本的状态与远程存储库的状态进行比较。例如,Git与subversion不同,除了你明确要求它之外,它看起来并不是它自己的本地状态。

我不建议像你一样在存储库之间来回切换,因为这肯定会引起麻烦,因为git会看到两个不同的历史,但认为它们应该是一个单独的历史记录。而是使用

添加第二个遥控器
git remote add repoA git://someplace.com/your/repoA

然后,您可以使用git fetch repoA提取更改,然后使用git diff将工作副本更改与它们进行比较。 git status不会显示本地副本与远程副本之间的更改,除非您首先将更改从远程数据合并到工作副本。有关此类事情的更多信息,请查看官方git文档herehere