git - 只为一个子目录创建一个分支

标签 git

这是一个概念性的问题,而不是“我该怎么做?”问题。

我正在帮助一个团队将一个非常大的 SVN 存储库迁移到 Git 存储库。 我稍微简化了一点,但让我们假设他们当前的 repo 结构是这样的:

   --trunk
     |-Proj1
     |-Proj2
     |-Proj3
   --branch
     |-Proj1
       |- branch1

等等

他们(存储库的所有者团队)坚持认为,它应该转到一个单一的 Git 存储库,而不是每个项目都在自己的存储库中。让我们假设我无法说服他们。 (我怀疑当他们开始使用 Git 并明白这是不切实际的时候,他们会改变主意的。)

SVN 中的每个 ProjN 都独立于其他分支。

我关于 Git 的问题是,当我分支时,我可以分支一个存储库的子文件夹(即 Proj1)而不是整个存储库吗?我的直觉是你总是应该在顶层分支 git。我错了吗?

最佳答案

您不能分支子文件夹。分支始终适用于整个工作树。

我想 git submodules你在找什么您可以将它们想象成“嵌套的 git 存储库”。

关于git - 只为一个子目录创建一个分支,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39499371/

相关文章:

Git 正在推送我已删除的文件

git - 为什么TortoiseGit在提交消息编辑后运行prepare-commit-msg?

Git:如何使用 VS Code 源代码管理将功能分支 merge 到 master 中?

windows - 适用于 Windows 的 GIT Bash 没有给出任何结果并返回到命令提示符

git - 使用 PowerShell 在 Git 中简化提交

linux - 如何使用静态链接构建 git?

git - 具有相同 GIT master 的多个项目

git - git 索引究竟包含什么?

git - BFG使用无效后,Git merge 重复

当我切换分支时,Git 正在删除一个被忽略的文件