Git是否在创建空目录时存储历史记录?

时间:2015-02-06 05:56:20

标签: git git-svn

我最近使用git-svn将Subversion转换为Git。 我知道我必须添加.gitkeep来在Git中添加一个空目录。 这是否意味着Git在创建目录时不存储历史记录?

我的Subversion存储库有许多空目录,如果我将.gitkeep添加到Git的所有空目录中,则意味着目录的历史记录被视为现在创建它们,而不是创建空目录的确切日期。

2 个答案:

答案 0 :(得分:0)

您无法将目录添加到Git,只能添加文件。是的,Git不知道何时添加了空目录 - 因为永远不能添加空目录。

答案 1 :(得分:0)

不,Git不存储有关目录的信息。 git-svn有设施为您处理此问题。

克隆时,

git svn clone --preserve-empty-dirs将为您处理空目录。它将创建一个占位符文件来跟踪空目录(默认为.gitignore)并根据需要删除它们。

git-svn还存储未跟踪的空目录。结帐或重置后可以使用git svn mkdirs来重新创建空目录。

最后,svn-remote.<name>.automkdirs配置值可以控制git svn clonegit svn rebase是否为您运行git svn mkdirs