Git正在更新过时的本地回购协议

Git正在更新过时的本地回购协议,git,Git,我尝试过用git从远程repo更新严重过时的本地repo,但没有找到一个好的答案。我正在寻找的命令基本上可以解决任何冲突,方法是使用远程repo所说的任何内容,并在需要时删除本地文件(以防它们不再存在于远程repo中),并忽略我可能对跟踪文件所做的任何和所有更改。您可以: 删除所有本地分支(请参阅“”) 重新创建本地分支,跟踪远程回购的远程分支:请参阅“” 清理新分支不再引用的旧提交:“” 因此,您不必处理“合并冲突”:这是一种全局重置(如果您有任何想要保留的工作,请谨慎处理,您的问题似乎并

我尝试过用git从远程repo更新严重过时的本地repo,但没有找到一个好的答案。我正在寻找的命令基本上可以解决任何冲突,方法是使用远程repo所说的任何内容,并在需要时删除本地文件(以防它们不再存在于远程repo中),并忽略我可能对跟踪文件所做的任何和所有更改。

您可以:

  • 删除所有本地分支(请参阅“”)
  • 重新创建本地分支,跟踪远程回购的远程分支:请参阅“”
  • 清理新分支不再引用的旧提交:“”
因此,您不必处理“合并冲突”:这是一种全局重置(如果您有任何想要保留的工作,请谨慎处理,您的问题似乎并非如此)

这项研究采用了一种更简单的方法:

在那一点上,我只是
rm-Rf
dir和clone从头开始。
Git真的需要一种
——他们的——全部——强制
类型的东西


请注意,有一些方法可以模拟“他们的”选项,即使“他们的”选项解释了它不太可见的原因:请参见“

尝试使用以下命令:

git fetch
git reset --hard origin/master

这将强制本地分支与远程分支匹配,同时放弃任何更改。但是请注意,您需要为每个分支执行第二步。

ugh。在svn世界中,基本上只需一个命令就可以完成很多工作:/我实际上没有尝试,当时我只是从零开始rm-Rf dir和clone。Git真的需要一种--他们的--所有的--强制类型的东西。@Syrahn有趣。我已经编辑了答案以包含您的解决方案,并添加了使分支看起来像另一个分支的方法的链接,包括模拟
--他们的
选项的所有方法。