我在git存储库中使用git管理了一个ios独立项目 使用此代码,我正在创建一个ios动态库,它将从独立代码中稍作修改,使其作为库工作。
现在我必须管理两个不同的代码库,每当我在独立项目中进行更改时,有时我会错过动态库中的更改。
是否可以从公共存储库管理独立项目和动态库中的公共代码,或者执行此操作的正确方法是什么?
我需要单独维护独立项目,因为我无法像独立项目那样轻松地运行和调试框架。
答案 0 :(得分:5)
如果独立项目可以存在于动态库项目的子文件夹中,那么您可以使用 git submodule 将第一个项目的SHA1引用到第二个项目中。
git submodule add git@github.com:AFNetworking/AFNetworking.git Vendor/AFNetworking
每次修改该子文件夹中的任何内容时,您可以像往常一样提交和推送,但也可以返回主项目(动态项目),添加,提交和推送以记录子模块的新SHA1。
另一种方法是使用 subtree (作为illustrated here,请参阅tutorial)。
git subtree add --prefix=Vendor/AFNetworking --squash git@github.com:AFNetworking/AFNetworking.git master
我更喜欢第一种方法,但您可以在IOS project in this article
的上下文中看到它们