我正在和一个朋友一起做一个项目,我想返回到我们代码的旧版本,并将其设置为当前版本。我该怎么做?

我在vs08上使用“anksvn”。

我的电脑上有我想要的版本,但提交失败;我得到的信息是 "提交失败,文件或目录已过期。"

我的电脑上也有subversion客户端。


当前回答

右键单击要恢复>>恢复或恢复到修订的最高层次结构

其他回答

这页上有很多危险的答案。请注意,从SVN版本1.6开始,执行更新-r可能会导致树冲突,这将迅速升级为可能丢失数据的kafkeresque噩梦,您需要在谷歌上搜索关于树冲突的信息。

恢复版本的正确方法是:

svn merge -r HEAD:12345 .

其中12345是版本号。别忘了这个点。

右键单击项目>替换为>修订或URL >选择要恢复的特定修订。

现在将本地更新代码版本提交到存储库。这将把代码库恢复到特定的修订版本。

同步到旧版本并提交。这应该能奏效。

这里还解释了撤消更改。

下面的方法对我很有效。

我有很多本地更改,需要在本地副本中丢弃这些更改,并在SVN中签出最后的稳定版本。

检查所有文件的状态,包括被忽略的文件。 Grep所有行以获取新添加和忽略的文件。 将这些替换为//。 rm -rf所有的直线。 SVN状态——no-ignore | grep '^[?I]' | sed "s/^[?I] //" | xargs -I{} rm -rf "{}"

我认为这是最合适的:

是否合并向后,例如,如果提交的代码包含修订 5612到5616版本,倒着合并。对我来说很管用。

例如:

svn merge -r 5616:5612 https://<your_svn_repository>/

它将包含一个合并的代码回到以前的修订,然后您可以提交它。