我经常为自己的用法编写一些库,我想在不同的项目中使用它们。我希望有可能编辑库并使更改在使用库的所有项目中都有效。到现在为止,我总是不得不复制和粘贴。
我尝试了子模块,但根据git submodules reference似乎有许多垮台。
此依赖关系管理是否有更好的可能性? 这是什么最好的做法?
答案 0 :(得分:0)
有两种情况可以与不同项目的库一起使用。
假设repoA
和repoB
中的库是项目存储库之一。
您可以直接将本地repoA
的库添加到本地repoB
:
在本地repoB
- >右键单击projectB的解决方案 - >添加 - >现有项目 - >将库从本地repoA
添加到本地repoB
- >提交 - >推。
现在无论在哪里(在本地repoA
或本地repoB
)您更改了库,它实际上都会更改本地repoA
中的库,因此本地{{1}中的库}和本地repoA
始终同步。
如果其他开发人员也需要使用这些库,您还应该在repoB
中管理库。通常使用的方式是repoB
和git submodule
。
由于您已经尝试过子模块,因此我只会显示git subtree
,如下所示:
将库(在git subtree
的{{1}}分支中假设)添加到master
:
repoA
如果repoB
中有一些更改,请从git subtree add --prefix=repoB <URL for repoB> master
更改为repoA
:
repoA
如果在repoB
中对库进行更改,则将更改推送到git subtree pull --prefix=repoB <URL for repoB> master
:
repoB