我试图了解SVN存储库中的历史记录。下面我在分支上使用了TortoiseSVN修订图(让我们称之为X):
因此,在修订版 924 时,分支机构从主干分支出来。现在,当我查看分支上的历史时,我得到了这个:
由此我们可以看到修订版 941 的签入修改了 / branches /...文件夹中的路径。
但是当我选择 941 之前的签到(仍然在分支上)时,我得到:
所有这些签到都会修改从 / trunk /...
开始的路径怎么可能?分支机构上的签到会修改主干上的路径?
或者在分支机构的历史记录中弹出中继线上的签到?
答案 0 :(得分:3)
您从版本936分支。因此,您的分支的历史记录基于trunk上的修订版936开始。在此之前,主干上的任何内容在概念上都是您分支的祖先,因此逻辑上它将显示在历史记录中。 之后
无论如何,如果您只关心分支机构的修订,您可以在主干上隐藏祖先。完全出于此目的,日志对话框中有一个“复制/重命名停止”复选框。选中此复选框后,您将只看到分支上的提交创建的修订。
注意,您似乎不清楚一个非常重要的SVN概念,即:存储库中的每个修订版都包含该时间点存储库的每个分支上的每个路径。例如,在您的版本树中,虽然修订版971仅修改了主干上的工件,但您仍然可以在修订版971处签出您的分支。您无法在修订版934处签出您的分支,因为尚未创建分支。换句话说,修订包含分支;分支机构不包含修订版。每个修订版都是整个存储库的快照。