我正在使用 typescript、react、node.js 和 express。在我的节点服务器中,我调用 execSync
来克隆另一个存储库,向其中添加文件,然后推送这些更改。类似的东西:
execSync("git clone <sub-repo> <path-to-sub-repo> \
&& cd <path-to-sub-repo> \
&& git checkout -b <branch-name>");
alterSubRepoFiles(<path-to-sub-repo-file>, content);
execSync("cd <path-to-sub-repo> \
&& git add . \
&& git commit -m \"some message here\" \
&& git push --set-upstream origin <branch-name>);
然而,推送部分总是失败。经过进一步检查,我发现此代码在 外部 存储库而不是 内部 存储库中创建分支。
有关实现此功能的任何建议或提示将不胜感激。如果有更简洁的方法来实现这一点,我也将不胜感激。
注意:两个存储库都托管在 gitlab 上。
答案 0 :(得分:0)
是的,是的。
最内部的 repo 将作为它自己的 repo。为了更安全,我会要求您在外部存储库的 .gitignore
文件中添加最内部存储库,这样您就不会意外地添加带有 {{1} 的内部存储库(目录) }}