使用Fossil DVCS重命名目录

时间:2009-12-15 14:30:32

标签: dvcs fossil

是否可以使用Fossil重命名目录?我尝试过这个明显的命令:

fossil mv oldname newname

Fossil然后通知我它已经做了一些事情:

RENAME oldname newname

然而,称“化石变化”会导致空列表。据我所知,重命名目录要么不受支持,要么尚未实现,要么只是破坏。这有诀窍吗?

1 个答案:

答案 0 :(得分:18)

经过一些研究后我发现它可以做到,但这是违反直觉的。 Fossil并不关心目录会发生什么;它所关心的只是文件的位置。

重命名目录时,Fossil似乎:

  • 遍历存储库的旧目录文件列表;
  • 在文件系统的新目录中找到该文件;
  • 更新文件的元数据,以便将它们列为新目录的一部分。

如果新目录不存在,则会失败。新位置没有文件,因此Fossil无法将旧版本与新版本匹配,因此不会进行任何更改。

简而言之:在尝试对Fossil进行更改之前,必须通过文件系统重命名文件夹。如果你不这样做,Fossil会忽略你。

现在我考虑一下,这是有道理的,虽然我更喜欢它,如果Fossil只是更新文件系统本身而不是强迫其用户分两步。

作为附录,似乎无法向Fossil添加空目录。我假设它在内部只存储文件;文件夹被视为元数据。空文件夹是描述任何内容的元数据,因此添加它们毫无意义。