这就是我要做的。我有一个用于可重用代码的 Unity 3D 项目。我想把它添加到我在 git 中的其他项目中。
所以假设我有一个项目"foo"。
我想克隆foo,然后将我的可重用脚本添加为子模块;
然后我想要一个指向文件夹的符号链接,该文件夹包含我的子模块中的所有可重用脚本,以及一个存在于项目 foo 的资产文件夹中的脚本。
因此,当我在项目中进行更改时,我可以将更改推送到我的子模块项目中。
这可能非常令人困惑,如果我需要更具体,请告诉我,我会努力做得更好。
最好将两个环境分开:
-
Git 克隆一个,其中你有 foo 和 foo/script 子模块:
git clone foo /url/of/foo git submodule add /url/of/script git add . git commit -m "Add script as submodule of foo" git push
-
工作环境,您可以在其中设置 Foo 和脚本脚本的符号链接。
cd somewhere/else ln -s /path/to/foo/file1 ln -s /path/to/foo/scripts/scrip1 ...
这样,一旦你修改了脚本,你就可以回到foo中,并执行一个git push --recurses-submodules=check
,以确保你已经添加/推送了foo/scripts和foo。