我需要类似于子模块的东西,但是它作为依赖存在于主存储库之外。
问题如下:
我正在尝试使用Git(以一种非常笨拙的方式)来管理CAD工具(Cadsoft Eagle)的设计文件,但我很难弄清楚是否有一种方法可以使用git子模块来管理每个项目对CAD工具共享库的依赖关系。
我使用的文件夹结构如下:
在这种情况下,为每个项目添加eagle.git存储库作为git子模块是没有意义的。
然而,我仍然需要一种方法来快照当前状态的“eagle.git”存储库,以便在将来更新库时,可以回滚到访问Proj[x]提交时使用的特定版本的库文件。
理想情况下,我希望有以下功能:
我使用的文件夹结构如下:
~/eagle/ <-- Main library used by multiple projects
.git/
<library files>
~/projects/ <-- Projects folder
Proj0/
.git/
<design files>
Proj1/
.git/
<design files>
在这种情况下,为每个项目添加eagle.git存储库作为git子模块是没有意义的。
然而,我仍然需要一种方法来快照当前状态的“eagle.git”存储库,以便在将来更新库时,可以回滚到访问Proj[x]提交时使用的特定版本的库文件。
理想情况下,我希望有以下功能:
~/eagle/ <-- Main library used by multiple projects
.git/
<library files>
~/projects/ <-- Projects folder
Proj0/
.git/
<design files>
**eagle** <-- something that acts like a submodule
but which actually points to ~/eagle/
Proj1/
.git/
<design files>
**eagle** <-- something that acts like a submodule
but which actually points to ~/eagle/
我希望能够:
cd ~/projects/Proj0
git submodule update
我希望当Proj0的版本被检入时,~/eagle/目录能够自动回滚。
有没有人知道Git中是否有任何东西可以实现这种行为?