将HTML5-boilerplate合并为Git子模块还是有更好的选择?

时间:2012-12-27 03:00:17

标签: git git-submodules html5boilerplate

我正在构建一个Pythonic Web应用程序框架,我理想情况下静态文件(应用程序框架的一小部分)基于HTML5-boilerplate,因为h5bp付出了很多努力。复制样板文件不允许我引入h5bp所做的上游更改,但html5-boilerplate也不会将自己用作Git子模块,除非我决定将我的应用程序的所有静态文件放在里面html5-boilerplate并将其视为子模块。

README.md
runserver.py
app_pkg/
  config/
  templates/
  controllers/
  models
  static/       <-- Make this html5-boilerplate submodule? 

然后我的所有静态文件都进入html5-boilerplate repo,因此不再单独跟踪html5-boilerplate源代码。 :(

这里有两个较大的问题。 Git不能很好地处理一些源文件是我自己的项目,其他源文件跟踪远程存储库(如html5-boilerplate)。您可以拥有多个远程仓库,但无法单独跟踪更改。或者,来自其他存储库的源文件可以包含在项目中,如果它们足够模块化以用作Git子模块。但是,对于这个用例,html5-boilerplate似乎不够模块化。

其他人如何设法将html5-boilerplate合并到更大系统的源中并重新排列目录,同时仍然分别跟踪html5-boilerplate更改?目前可能没有一个完美的解决方案来解决这个问题,但我想确保我没有错过一些精彩的东西。

2 个答案:

答案 0 :(得分:1)

一种选择是使用git-subtree进行子树合并,将h5bp存储库引入您选择的目录中。然后,您可以使用git-subtree稍后以最小的努力合并上游更改。

答案 1 :(得分:0)

您可以跟踪软链接,它可能就是您要查找的内容。