git 子模块:应将哪个存储库用作 'submodule'?
git submodules: Which repository shall be used as the 'submodule'?
我有一个私有 git 存储库 (repos 'private'),里面有一堆文件
我经常编辑。其中一些文件发布在网站上。这很乏味
每次我做一个小改动时更新这些文件。我因此想到
按以下方式使用 git 子模块:我设置了第二个(现在 public)git
存储库 ('public'),并放入网站上出现的所有文件。这
网站然后在 'public' 中提供这些文件的链接。一旦我编辑其中一个
'private' 中的文件也在 'public' 中,'public' 中的更改将是
可见(在一个简单的 git 命令之后),因此文件更改将是可见的
在网站上。我的问题是:
1) 这是处理问题的好方法吗?
2) 我读到了 git submodule update --remote --merge
但我仍然不是 100%
确定这是否将子模块更新为主项目中的更改或
恰恰相反。我经常在解释中看到 wor 'upstream'
但找不到确切的定义。
3) 如果子模块主要用于更新主项目
子模块的变化,我是否必须创建 'private'
存储库作为子模块和 'public' 一个作为主项目? (因为我
想从 'public')
中跟踪对 'private' 的更改
[我想我仍然把这些问题放在一个单一的 post 中,因为它们非常相关。]
使用子模块会增加相当多的复杂性。
似乎拥有一个目录 'private' 和目录 'public' 的单个存储库会更容易。目录 'public' 可能包含指向 'private'.
中文件的符号链接
这将允许您拥有 2 种类型的文件,但避免了子模块的复杂性。
另一种选择是让您的构建系统处理这个:只有一个包含所有文件的目录,并有一个 Makefile 目标将 public 文件复制到另一个目录。
我有一个私有 git 存储库 (repos 'private'),里面有一堆文件 我经常编辑。其中一些文件发布在网站上。这很乏味 每次我做一个小改动时更新这些文件。我因此想到 按以下方式使用 git 子模块:我设置了第二个(现在 public)git 存储库 ('public'),并放入网站上出现的所有文件。这 网站然后在 'public' 中提供这些文件的链接。一旦我编辑其中一个 'private' 中的文件也在 'public' 中,'public' 中的更改将是 可见(在一个简单的 git 命令之后),因此文件更改将是可见的 在网站上。我的问题是:
1) 这是处理问题的好方法吗?
2) 我读到了 git submodule update --remote --merge
但我仍然不是 100%
确定这是否将子模块更新为主项目中的更改或
恰恰相反。我经常在解释中看到 wor 'upstream'
但找不到确切的定义。
3) 如果子模块主要用于更新主项目 子模块的变化,我是否必须创建 'private' 存储库作为子模块和 'public' 一个作为主项目? (因为我 想从 'public')
中跟踪对 'private' 的更改[我想我仍然把这些问题放在一个单一的 post 中,因为它们非常相关。]
使用子模块会增加相当多的复杂性。
似乎拥有一个目录 'private' 和目录 'public' 的单个存储库会更容易。目录 'public' 可能包含指向 'private'.
中文件的符号链接这将允许您拥有 2 种类型的文件,但避免了子模块的复杂性。
另一种选择是让您的构建系统处理这个:只有一个包含所有文件的目录,并有一个 Makefile 目标将 public 文件复制到另一个目录。