如何使用TortoiseSVN撤销全部或部分的SVN提交?
首先,您需要确认您是想回滚 "所有更改" 还是仅回滚一个单独的文件。 TortoiseSVN 只有 "1 或全部" 的方法, 意味着你可以还原整个 check-in 集或单个文件: 不能是部分 check-ins。
因此,如果要还原特定的修订版本(且您希望更改该更改集中的所有文件),您将要右键单击-> TortoiseSVN -> 显示日志。找到您要回滚到的修订 / 更改集,右键单击该修订 “还原为此修订版本”。
还有另一个选项可能会对您感兴趣,即“从此修订还原更改”,它将在该修订版本和当前版本之间进行差异合并,仅合并差异。 我有时觉得这更具吸引力,这样我就可以保留 changesets 之间的所有更改。
另一个选项是还原单个文件。 您需要再次右键单击-> TortoiseSVN -> 显示日志; 但这一次,您可以选择单个文件。
TortoiseSVN 不允许您选择多个要还原回去的更改集中的文件。 它只能是全部或只有 1 个。
对于其他所有人,请确保 "check-ins" 仅涉及与该更改相关的文件。 这应该是当今的常见做法; 但是,我仍然发现开发人员在一天结束时将所有更改捆绑到单个 check-in 中。
我斜眼看那些开发人员。 -_^
如果你想撤销之前做出的提交(修订):
使用资源管理器:
如果你想撤消本地所做的更改(未提交)
使用资源管理器:右键单击文件,TortoiseSVN->还原。
除了Bartek所说的方法,您还可以将特定版本检出到本地工作副本中,然后将其提交回主干。