将“.git”移动到父目录有任何副作用吗?

Are there any side effects to moving ".git" to a parent directory?

我最近 运行 遇到了一个我需要 expand my git repository 的问题。我的第一个想法是将 .git 移动到一个新位置。我浏览了几篇相关的帖子,我有点惊讶没有其他人提出来。

考虑以下目录结构:

 - root
 - a
   - ...
 - b
   - .git
   - ...

如果我想扩展我的存储库以包含 root 中的所有内容,为什么不直接将 .git 移到那里呢?这是好主意还是坏主意?这样做会保持我的提交历史完整吗?有哪些潜在的副作用?

我想知道如果我尝试这样做可能会出现什么问题。

这是一个有效的用例。请参阅我的回答 (),了解您可能需要执行类似操作的真实示例。

如果您希望父目录中的所有内容都在 Git 中的同一存储库下进行版本控制,则没有副作用。但是,如果有不应该版本化的东西,那就是使用不当。

用户需要知道他在做什么。正如我之前所说,这是一个合法的用例,如果需要在版本控制下扩展代码,可以使用此技术。

只需确保删除子目录中的 .git 文件夹,并在父目录中添加 .gitignore 以说明对路径的更改。