我可以使用哪些函数将远程分支中的所有子模块(本地回购)同步/初始化/更新到版本?git - 检出分支和子模块
“同步”(让我们称呼它,我的意思不是混帐同步!)也必须工作时:
- 子模块已添加只内的远程分支
- 文件子模块已在本地添加/删除/修改。跟踪或未跟踪。
- 子模块被删除(可选)
从本质上讲,我想当地的回购永远是在完全相同的版本作为远程分支。每当我改变子模块中的某些东西时,不需要太多的摆弄。因此,没有手动ssh到服务器初始化一个新的子模块,只为部署脚本工作...
这可以实现而无需克隆(又名。传输)整个存储库?我选择了git来安全快速地部署我的源代码。但我能想到的唯一选择是完成一个完整的git clone --recursive
并在其各自的标签处检查子模块。在这种情况下,rsync可能会更好地同步文件。
每个子模块也是它自己的存储库,所以如果顶级存储库R有三个子模块S0,S1,S2,那么您有* 4 *存储库需要担心。但是,如果您使用*参考克隆*,存储库便宜 - 不像分支便宜,但仍相当便宜。不过,子模块在patootie中仍然很痛苦。 :-) – torek