所以我开始实施this model。一步一步实现'成功的git分支模型'
我完全是Git和软件实现过程的新手,所以我列出了我在下面做的所有事情。我需要你的帮助来解决一些我已经得到的问题,如果你发现我不了解某些事情或者向错误的方向发展,可能会提出一些建议。我相信这可能对其他人走上这条道路有很大的帮助。所以这是我迄今为止所做的。我有我的网站的以下结构
/var/www/mysite.com/
kohana
kohana files
www
index.php
other files
要实现我已经做了以下的模式:
我初始化存储库从克隆的裸库并取得了初步承诺:
cd /var/www/mysite/ git init git add . git commit - 'initial commit'
我添加了共享用户以放置'central repo'(共享裸仓库):
- adduser git - su git - cd
我克隆了存储库到这个用户的文件夹。这将是'起源'资料库。
git clone --bare /var/www/mysite.com mysite.git; cd mysite.git;
我添加第二个主要分支 '发展',现在有两个分支 '主人':
git branch develop; git branch -a *master develop
我补充说,将开发产品的用户:
adduser maximus adduser len4ik
我为他们创建了ssh密钥并将其放到.ssh目录中:
su maximus; mkdir .ssh; cd ~/.ssh; ssh-keygen -t rsa -C "[email protected]"; su len4ik; mkdir .ssh; cd ~/.ssh; ssh-keygen -t rsa -C "[email protected]";
我创造公共的资源为他们每个人的
su maximus; cd; git clone /home/git/mysite.git; su len4ik; cd; git clone /home/git/mysite.git;
现在我的开发人员在Windows上安装TortoiseGit,设置SSH密钥,并从他们的公共库拉在Windows上使用TortoiseGit本地创建库。
我有几个问题:
- 在步骤4应该选择哪一个分支?现在它是'主',但是我是否需要将它切换到“开发”?
- 我假设用户将推动并从他们的公共仓库(
/home/user/mysite
)拉。他们的承诺如何以'中央回购'结尾,即/home/git/mysite.git
? - 这些用户将如何检查分支并从“中央回购”获取更新?
- 在什么时候我需要创建释放和功能分支?我需要在'中央回购'(
/home/git/mysite.git
)上创建吗?
为什么你需要每个用户“公共仓库”? – Vasiliy
这就是我认为我需要从模型的解释和[本章的Git专业书](http://git-scm.com/book/en/Distributed-Git-Distributed-Workflows),它显示每个开发人员有自己的公共存储库 –