gpt4 book ai didi

Git 使用子树或子模块管理外部资源

转载 作者:IT王子 更新时间:2023-10-29 01:20:17 29 4
gpt4 key购买 nike

我读了很多关于 git 子模块应该有多糟糕的文章,但我不确定这是否只是那些认为它有局限性的人的提示,或者它是否有严重的问题(尤其是关于我的用例)。

我只是想像这样在我的 repo 中包含不同的 repo

website/
libs/
js/
fs-slides [external]
fs-dialog [external]

并且必须有可能轻松更新这些存储库。据我所知,从 repo 协议(protocol)中只包含一个文件并不容易,对吗? (不过没关系。)

我应该为此使用子模块吗?
或者它有什么问题吗?还是子树更容易?

最佳答案

子模块非常适合您的情况,特别是因为您不介意将这些子库包含在它们自己的子目录中。

使用子模块可能遇到的主要严重问题是在进行更新时更新它们,如“how exactly does git submodule work”中所述:

如果在子模块中进行提交时忘记设置分支,则提交将在分离的 HEAD 上进行,并且正在进行的更改将在下一次 git submodule update 中丢失(您如果为您的子模块 repo 激活,可以通过 reflog 取回它们。

然后,作为Michael comments ,正如我在上面的链接中详述的那样,您需要在提交之前将子模块推送到它自己的上游并推送父仓库(以避免推送取消发布子模块提交)

关于Git 使用子树或子模块管理外部资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12668711/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com