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

我该怎么做?

想到的第一个答案是:进行更改并“svn commit”它们。但是,在这种情况下,看起来我试图删除其他用户添加的更改。此外,可能是最近我不小心对代码进行了一些我不打算做的更改。

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

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

那么解决办法是什么。总而言之,我想从 SVN 存储库中获取最新版本的代码,并且我不想将此代码与我的本地更改合并(我想覆盖我的本地更改)

4

1 回答 1

1

你可以做两件事:

  1. 查看一个新的干净工作目录。没有理由你不能。优点,它不会碰你的东西。
  2. 进行更新后还原您的更改。这将使您获得干净的结帐,但您将丢失所有更改。

通常,您希望保留所做的更改并将它们合并回其他人所做的更改中。如果您需要干净的结帐,请签出一个新的工作目录。这是最简单的,它会保留您的更改。如果您不想要更改,请还原它们,运行svn status以验证您在工作副本(或非版本化文件)中没有更改,然后进行更新。它会比新的干净结帐快一点。

于 2013-04-08T14:44:08.157 回答