颠覆:请解释“工作修订”与“最后提交的修订”

时间:2014-11-25 09:46:09

标签: svn

在我的目录中,我执行通常的工作周期:

svn update
#..... apply my modifications
svn add new_stuff
svn commit

我做的时候

svn status -v

之后,"工作修订号"和#34;最后提交的修订号"总是一样的,除非有一个文件(我从未接触过),其中svn status -v给出以下输出:

  677      317 NameOfUser      NameOfFile

为了研究这个,我在这个文件上做了一个svn日志,它只显示了两个条目:一个用于r317(文件创建),一个用于r660(重构存储库而不更改文件内容),两者都在我开始编程之前应用在这个项目中。

据我所知,在r317中,文件已创建,之后内容从未改变过。但是"工作修订",677?

的确切含义是什么?

1 个答案:

答案 0 :(得分:2)

Subversion全局修订号

Subversion使用全局修订号来跟踪文件的更改。当任何时候,任何人做出更改并提交此修订号增加。

工作修订

当您签出源代码时,您将获得修订号的源代码。每当您更新代码时,您的修订版号都会更新为最新版本。您的工作版本是您的最新更新版本。您的工作版本可能会落后于服务器的最新版本。

例如

  1. 您更新所有文件并获得1002修订号
  2. 有人做了几次提交,服务器得到了1010的修订
  3. 在您更新源代码之前,您的工作副本将显示1002。由于svn允许您单独更新文件或文件夹,因此您的某些文件可能会显示不同的数字。例如,如果您只更新a.txt,它将显示1010,但您的其他文件将显示1002。
  4. 上次提交的修订

    这很简单,这是更改此文件的最后一个提交号。每当您更改任何文件时,即使此特定文件没有更改,您的存储库全局修订版号也会增加。 使用上次提交的修订版号可以了解此文件/文件夹最后一次更改的时间。