我有3个文件夹(每个都是一个git repo),比如Dev
UAT
和Prototype
。我希望我的Dev
分支成为主,我希望这些存储库显示为分支。
到目前为止,我正在考虑将远程连接到每个文件夹(内置git),然后以某种方式将它们与--unrelated
标记合并。我如何为3个分支机构做这个?我试过但没有用。
为了澄清一下,当我在git branch
文件夹中Dev
时,我希望将master
Prototype
和UAT
视为分支。提前致谢!
答案 0 :(得分:1)
虽然子模块是基本答案,但我建议您不要这样做,因为我认为您试图以错误的方式扭曲工具。
你想要不同的环境,这是大多数商店常见的,包括我工作的那个和我认识的所有其他商店。
我建议你有一个主分支和一个存储库。
当您发布不同版本时,您可以使用通用版本控制系统
标记版本答案 1 :(得分:0)
您只需添加新的远程
即可git remote add remote2 <url>
现在您可以检查任何给定远程存储库的分支表单。
答案 2 :(得分:0)
如果您想将其他存储库添加为现有 Dev git repo中的分支,那么您可以执行以下操作
cd <Dev Path>
git remote add UATremote <Path to UAT Folder Repo>
git fetch UATremote
git checkout -b UAT UATremote/master
git remote add PROTOremote <Path to ProtoType Folder Repo>
git fetch PROTOremote
git checkout -b Prototype PROTOremote/master
然后可选择清理遥控器:
git remote rm UATremote
git remote rm PROTOremote
答案 3 :(得分:0)
我相信你正在描述submodules
的使用。当您想要将存储库保存在另一个存储库中时,可以在场景中使用它们。当您希望在所有贡献者中更新项目中使用的库或APi时,可能会出现此类要求。
要将submodule
添加到当前存储库,请使用
git submodule add <url>
您从GitHub或其他任何地方获取的URL在哪里。请记住,submodules
只是存储库,因此工作流适用...要在回购中开始处理您的回购,您需要像bash
非常重要
使用子模块时,不要自动启动分支。这必须手动完成,所以当你在任何工作之前git checkout master
时,不要忘记submodule
...