场景:
- 程序员在版本5上为项目“foo”创建了一个名为“my_foo”的分支。
- 在开发“my_foo”功能过程中,程序员对多个文件进行多次更改。
- 在每个主要步骤结束时,比如向类添加多个新函数,程序员会对相应的文件进行
svn commit
提交,以将它们提交到分支。 - 几周后,在许多次提交(每次提交都有描述他所做的工作的提交日志)之后,程序员将分支合并回主干:
哇,他已经将所有的更改合并回主干!众人欢呼雀跃,畅饮Mountain Dew。
现在假设一周后另一个程序员将其工作副本从版本5更新到版本15。“哇”,他说,“自版本5以来发生了什么变化”。程序员然后在其工作副本上执行 svn status
,结果如下:
------------------------------------------------------------------------ r15 | programmer1 | 2010-03-20 21:27:04 -0400 (Sat, 20 Mar 2010) | 1 line 将2.0版本更改合并到主干 ------------------------------------------------------------------------ r5 | programmer2 | 2010-02-15 10:59:55 -0500 (Mon, 15 Feb 2010) | 1 line 将assets/images/tumblr_icon.png添加到主干
其他程序员提交到分支中的所有注释都去哪了?它们不会在合并过程中被拉取吗?我是疯了还是忘记了点什么?
svn log --verbose
中将其标记为“R”)。这让我疯狂地想要理解为什么中间的修订记录会丢失。 - Shalom Craimer