Eclipse:'Revert'和'Override and Update'之间的区别

时间:2011-07-27 19:53:41

标签: java eclipse svn synchronization revert

Eclipse的“Revert”和“Override and Update”选项有什么区别(团队同步 - SVN(工作区) - 传出模式)?

提前致谢。

3 个答案:

答案 0 :(得分:39)

这是一个场景,假设您和您的队友(Bob)同步并且与存储库保持同步。

  • 您都拥有hello.txt修订版100
  • 的本地副本
  • Bob提交更改,导致存储库中的hello.txt(101)
  • 您对hello.txt(100)进行了未提交的本地更改
    • 如果您尝试提交,则会发生冲突,因为您的修订版(100)与现在处于修订版(101)的存储库不同步。
    • 如果您还原,则会返回修订版100,并丢失您的本地更改
    • 如果您覆盖并更新您的本地更改将被Bob的最新版本从存储库中覆盖,您最终将获得本地修订版本(101)。
    • 如果您合并了更改,并且“标记为已合并”,则可以提交并创建修订版(102)。
    • 重新应用更改并提交后,您将创建修订版(102)。

答案 1 :(得分:25)

还原:

将文件恢复为修改前的状态,即恢复到原始版本,删除工作副本与服务器上特定修订版本之间的差异。

基本上:将文件更改恢复为未修改状态。旧版本。

覆盖并更新:

通过修改后的工作副本上传文件的较新副本,删除所有更改并使服务器看到该文件为“最新”。

基本上:将所选资源本地副本替换为存储库中的一个。服务器看到的修订版。

source

答案 2 :(得分:5)

更新 - 将存储库中的当前代码合并到您的代码中。除非存在冲突,否则它不会覆盖您的代码。

还原 - 将文件更改为任何选定的先前版本。

覆盖 - 覆盖当前文件并替换存储库中的文件。 -