如何从SVN服务器加载最新版本的代码忽略我的本地更改?

时间:2013-04-08 11:44:24

标签: svn repository commit revert

  1. 几天前我“更新”了我的本地源代码副本(我从SVN存储库中获取了代码)。
  2. 之后,代码被其他人更改并提交到存储库。
  3. 现在我想对代码进行一些更改,并将其提交到存储库。
  4. 我该怎么做?

    首先想到的答案是:进行更改并“svn”提交。但是,在这种情况下,我将尝试删除其他用户添加的更改。而且,最近我可能不小心对代码进行了一些我不想做的更改。

    首先想到的答案是:首先,“svn update”您的本地代码然后进行更改,然后“svn”提交它们。但是,在这种情况下,“更新”将尝试将来自svn服务器的新代码与我的代码合并,该代码可能包含上述意外的不期望的更改。

    首先想到的答案是:首先,“svn revert”,进行更改,然后“svn commit”。但它也行不通,因为通过“svn revert”我确实删除了我的意外更改(这很好)但是我得到了旧版本的代码,如果我尝试“svn”将它提交给svn服务器,它将会看起来我试图删除其他人所做的更改。

    那么解决方案是什么?总结一下,我想从SVN存储库中获取最新版本的代码,我不想将此代码与我的本地更改合并(我想覆盖我的本地更改)

1 个答案:

答案 0 :(得分:1)

您可以做两件事:

  1. 查看一个新的干净工作目录。没理由你不能。优点,它不会触及你的东西。
  2. 执行更新后还原您的更改。这将为您提供 clean 结帐,但您将失去所有更改。
  3. 通常,您希望保留所做的更改,并将其合并回其他人所做的更改中。如果您需要干净的结账,请查看新的工作目录。这是最简单的,它可以保持你的变化。如果您不想进行更改,请将其还原,运行svn status以验证工作副本(或非版本化文件)中没有更改,然后进行更新。它会比新的干净结账快一点。