现有3文件夹结构的新Git回购/分支机构(理论)
我正在尝试验证如何从现有的3个文件夹结构(dev、beta、prod)中设置git回购。我了解输入零件的技术/命令。但是如何从3个文件夹中创建3个分支呢。不幸的是,这些都不是我们可以在git上重新开始的新项目,有很多文件已经在使用中。dev文件夹与beta/prod文件夹有很大的不同 我们的想法现有3文件夹结构的新Git回购/分支机构(理论),git,Git,我正在尝试验证如何从现有的3个文件夹结构(dev、beta、prod)中设置git回购。我了解输入零件的技术/命令。但是如何从3个文件夹中创建3个分支呢。不幸的是,这些都不是我们可以在git上重新开始的新项目,有很多文件已经在使用中。dev文件夹与beta/prod文件夹有很大的不同 我们的想法 在prod文件夹中创建回购,使其成为“主”分支 然后创建一个分支“release”,这将与master匹配(我们现在没有beta测试,所以忽略/删除beta文件夹) 接下来创建一个“dev”分支 从文件
$ git init --bare project.git
添加prod文件夹
更改到您的prod
目录并在那里初始化git存储库:
$ cd prod
$ git init
$ cd dev
$ git init
创建名为“prod”的分支:
添加所有文件:
$ git add .
$ git commit -m 'added prod files'
$ git add .
$ git commit -m 'added dev files'
遥控器:
$ git remote add origin /path/to/project.git
和推送:
$ git push origin prod
$ git push origin dev
添加dev文件夹
更改到dev文件夹并在其中初始化git存储库:
$ cd prod
$ git init
$ cd dev
$ git init
添加远程存储库:
$ git remote add origin /path/to/project.git
$ git clone -b prod /path/to/project.git
$ cd project
创建一个新的dev
分支:
$ git checkout -b dev
添加所有文件:
$ git add .
$ git commit -m 'added prod files'
$ git add .
$ git commit -m 'added dev files'
和推送:
$ git push origin prod
$ git push origin dev
添加beta文件夹
对您的beta文件夹重复相同的过程:
$ cd beta
$ git init
$ git remote add origin /path/to/project.git
$ git checkout -b beta
$ git add .
$ git commit -m 'added beta files'
$ git push origin beta
克隆主存储库
从裸存储库创建工作副本:
$ git remote add origin /path/to/project.git
$ git clone -b prod /path/to/project.git
$ cd project
这里的-b prod
导致git签出prod
分支。
查看可用的分支:
$ git branch -a
* prod
remotes/origin/beta
remotes/origin/dev
remotes/origin/prod
现在你已经全部设置了。 你必须考虑你所描述的文件夹更好地映射到单独的存储库而不是单个存储库中的分支,特别是如果
dev/master
分支)合并到release和prod中仍然是一个关键点。随后,您可以进一步了解这一点,并将所有回购协议视为优步回购协议中的子模块
对于您的问题,在包含所有内容的one repo中,您似乎关心将文件夹中的文件导入到分支中。您可以按以下步骤进行操作:
master$git co-b devb
devb$cp-r/path/to/external/dev-dev
devb$git添加dev
devb$git提交-m“初始开发提交”
现在是什么风险投资?是否没有从it到git的迁移路径可以让您从中导入历史记录?目前没有VC,我们在每个项目的excel表格中保留文件更改。当我们需要推出一个新的功能/版本时,我们将列出的文件移到beta、tested和prod。将文件版本作为“filename.ext_BAC_date”保存在prod中。因此,保持历史记录并不是一个问题。为开发人员和生产人员保留单独的回购协议而不是分支有什么好处。我把它看作是一个六合一的篮子/另一个篮子里的半打。我们仍然需要仔细挑选合并项目。@undeadDog请参见