我开始使用git并且已经知道两种使用它的方法
第二种方式很好,但我需要控制,哪些文件应该被带入主分支。我听说过第三种使用git的方法,你可以在某种程度上通过管理员来决定进入存储库的内容以及不应该进入的内容。
答案 0 :(得分:2)
您可以使用Dictator-Lieutanant工作流程。这意味着只允许一个人(独裁者)推到主回购(“受祝福的回购”)。其他开发人员拥有自己的存储库。当他们觉得他们准备好了什么时,他们会通知独裁者并且他会将他们的更改合并到主存储库中。这是Linux Torvalds和他的员工用来开发Linux内核的工作流程。
答案 1 :(得分:1)
如果您想成为唯一的管理员,那很简单:您不会给其他人写入访问中央存储库的权限。然后有几种主要方式可以从其他人那里获得更改:从他们公开发布的克隆中提取,或让他们提交补丁。很多人都这样使用GitHub:每个人都有他们自己的公共存储库,只有他们可以写入(你的是官方存储库),然后你从他们那里获取。
如果您希望多个人能够推送到中央存储库,那么对于自托管,您可能希望查看Gitolite,这将让一个或多个管理员确定允许其他人的内容如果你愿意,可以做到每个分支级别。例如,您可以让自己成为唯一可以推送到主分支的人,并让其他人推送到他们的个人分支,然后您可以决定是否合并。它非常灵活。你还可以使用像GitHub这样的东西,有多个人可以推送到中央仓库,但你不会有每个分支控制或任何东西;你必须完全信任有权访问的人。
答案 2 :(得分:1)
Git的好处是它允许您轻松快速地分叉存储库(制作单独的副本)和合并(从单独的副本中获取更改并将它们放入原始文件中)。为了实现您的目标,您只需让您的团队成员分叉主存储库并在本地进行更改(提交到他们自己的repo或分支,而不是主要的)。当他们完成一段代码后,他们会向您提交拉取请求,并选择是否提取所有更改,其中一些更改,或者不提取任何更改。
如果您仍然通过终端工作,您可能需要考虑使用git托管服务,例如http://www.github.com/,它允许您在一个漂亮的图形界面中完成大部分工作(更不用说一些很棒的方式可视化您的回购中发生的事情)。它们还具有鼓励多用户环境以及隐藏在公众之外的私人回购的功能(您可以选择谁可以看到它)。