SVN更新:使用它的最有效方法是什么?

时间:2013-01-25 06:58:51

标签: svn

远程服务器中有一个活动的SVN项目,其中有两个或更多贡献者(我就是那个)。

我已经拥有svn文件夹的文件,所以我做了一个:

svn diff

在我的本地副本中检查更改。现在服务器和我的副本中的文件存在差异。

所以如果我这样做:

svn update

它会更新远程副本并覆盖那里的更改吗?或者它是相反的,它会下载那里正在更改的内容并与我的副本合并?

几个小时后,假设我做了所需的更改,建议了什么?

  1. svn diff之前先做svn update
  2. 在执行svn update之前执行svn commit
  3. 我想确保我不会覆盖其他贡献者制作的服务器中的某些更改。

2 个答案:

答案 0 :(得分:0)

运行'svn update'不会对服务器进行任何更改,因此在您提交之前可以安全地进行 - 尽管您怀疑,它会检索其他人所做的任何更改并将它们合并到您的工作副本中。 / p>

如果您想在运行“svn update”之前预览对工作副本进行的远程更改,请尝试:

svn status --show-updates

绝对建议在提交之前(以及开始工作之前)运行svn update。

答案 1 :(得分:0)

update将远程更改带入您的本地副本,因此您无需担心任何时候使用它。

也就是说,如果远程更改很复杂,那么您可能会失去本地更改的神圣性,从而导致任何冲突的混乱。

我倾向于经常做svn diff来关注我的本地工作目录与工作基础的不同之处;准备好之后,我会做一个svn update让一切都变得最新,做一个最后的svn diff以获得关于我正在做什么的另一个观点,并最终执行{ {1}}。

所有这一切的唯一变化是我在Windows上使用TortoiseSVN,因此整个过程是图形化和直观的。