我可以使用git子模块来管理单个文件和目录吗?

4

我有一个复杂的代码仓库,有时候代码段之间的逻辑边界会跨越目录边界。有时候,目录X中的单个文件确实需要与目录Y中的文件一起使用。

例如,假设我有一个中央代码仓库,看起来像这样:

a/foo
a/bar
b/baz1
b/baz2

我希望我的本地代码库最终只包含 a/*b/baz1,而不包括 b/baz2。(是的,长期解决方案是移动文件,但在我进行重构时,需要适当地对文件进行版本控制。)
我可以使用 git 子模块来处理包含一些目录和其他随机文件的代码集吗?我该如何做?
2个回答

2
不,Git的“子模块”功能仅限于子目录及其包含的所有文件。

当你考虑实现时,这是相当明显的:子模块是一个Git存储库,意味着它包含一个.git目录,因此它最好是一个目录本身。 - Cascabel
1
我建议您创建一个新的问题来描述您实际想要做的事情,并查看是否有人能提出解决方案。这个问题很少涉及到您的实际问题,只是询问特定的解决方案(不幸的是,在您的情况下似乎并不起作用)。 - Greg Hewgill
@Greg问道:https://dev59.com/3FzUa4cB1Zd3GeqP0Sdz - Alex Feinman
这可能不是gist的预期用途,但我成功地将一个gist作为子模块添加到了我的一个项目中。没有问题。 - Craig Wayne

0

Gists充当小型存储库,甚至包括修订历史记录。您可以将单个文件放在gist.github.com上并将它们添加为子模块。

即使隐藏的Gists是公开的--请记住这一点。在所有情况下使用Gists可能不合适。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接