在两个不同的Git项目之间共享代码

7

我有两个不同的.Net项目,托管在github上。

我想为这两个项目创建一个共享的“commons”库。

我应该如何组织我的存储库以促进此共享?

理想情况下,对一个项目中此公共库的更改可以轻松地推送到另一个项目中。我希望保持代码本身可以从两个项目(在Visual Studio中)进行编辑,并且不将其作为库包含在内。有没有最佳实践?

2个回答

6

在每个存储库中执行 git submodule add path-to-shared-repository。将创建一个名为共享存储库的子目录。这个问题在这里很相关:https://dev59.com/KXM_5IYBdhLWcg3wPAnU - user2066805
1
这很奇怪。我只是想修复一个破损的链接。但因为它太小了,我无法做到,不要问我为什么。我不知道该添加什么,因为我不知道子模块。所以,我添加了一句话,以便我可以修复那个破损的链接。它被接受了。后来,当我试图替换那个无用的句子为更有用的内容时,它被拒绝了。所以,我们只能留下那个无用的句子。 - user2066805

2

关于git-subtree(来自您的参考):缺点是所有子项目文件都存在于父存储库中,这意味着您放弃了最初拆分项目存储库的原因之一:为给定的共享代码集合拥有一个规范存储库。如果有人更改了子项目,则可以在本地将其与其他更改合并,但如果他们想要与项目共享更改,则必须明确地将该更改拆分回其项目中。 - user2066805
但是,我同意一些其他选项 https://codingkilledthecat.wordpress.com/2012/04/28/why-your-company-shouldnt-use-git-submodules/ 或许更好。 - user2066805

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