1

我正在使用pelican制作博客。我想在我的项目中包含现有的pelican-plugins而不将代码复制到我的存储库中。例如:

/my_project
    pelicanconf.py
    /plugins        # Just a reference to https://github.com/getpelican/pelican-plugins
        assets
        ...

我知道这可以通过git submodule以下方式实现:

git submodule add https://github.com/getpelican/pelican-plugins.git plugins

但是,如果我决定创建自己的插件,或者从其他地方创建用户插件,我无法将它们存储在其中,plugins因为它现在是一个子模块。

如何在不将更改提交到该子模块的情况下将更改提交到作为子模块的文件夹?我应该只是分叉pelican-plugins并承诺吗?

4

2 回答 2

0

在这种情况下,对我有用的最佳解决方案如下:

  1. fork,或以其他方式为更改/添加创建存储库
  2. 用于git submodule将新存储库作为子文件夹添加到我的项目中
  3. 在子模块中进行更改,或对创建的存储库进行更改,然后更新子模块。

如果您不像我那样特别关注您希望如何跟踪更改,那么使用 Subtree的 ton 解决方案可以正常工作;最大的区别是来自存储库的所有提交都将包含在存储库的历史记录中。

于 2013-10-29T21:18:06.177 回答
-1

也许,您应该使用子树而不是子模块。

阅读以下文章。

Git - 子树合并

Git 子模块的替代品:Git 子树 | Atlassian 博客

于 2013-10-22T05:20:04.873 回答