2011-06-27 59 views
3

我对Git/Github很新,所以请和我一起裸照。在Github中管理私人存储库

我有一个很基本的问题,我试图在Github上解决。我有一个私有存储库(通过一个组织),我需要弄清楚设置它的最佳方式,这样我的团队就可以推送到主分支下面的分支,而不是主分支本身。

我知道一种方法是有两个独立的私有存储库,一个是“主”存储库,另一个是“暂存”存储库。然后只有我可以访问“主”回购,但团队可以访问“分期”回购。然后我将合并从“分期”到“主”的更改。

但我不确定我是否理解如何去创建关于“主”回购的“分期”回购,以及如何将更改合并回“主”。

这里是什么,我试图完成(该线之上,“大师”回购,线下,“分期”回购)的粗略图:

master (only me) 
----------------------------- 
--> staging (team) 
    --> feature 1 
     --> team member 1 
    --> feature 2 
     --> team member 2 
     --> team member 3 

任何想法?

在此先感谢。

+0

在github上为您的项目创建一个存储库,然后添加另一个名为* staging *的分支。此时你将有2个分支:**主**和**分段**。告诉你的代码猴子只能在* staging *分支上工作。 – karlphillip

+0

@karlphillip:这听起来像他正在寻找一种方法来限制他的猴子只有分期分支。 –

+0

您可以将存储库分配到组织中,因此创建存储库的分支并将所有其他人添加为可以提交到该分支的成员。您可以访问两者,因此可以将内容从“分段”移动到“主”。 –

回答

3

对于DVCS,分支和发布(推/拉)为two orthogonal concepts

这意味着你不应该关心你的合作者推动什么分支,只要他们推动自己(分叉)的GitHub上的私人回购。
你是唯一一个能够在你的私人回购中选择的分行进口他们建议的东西(通过pull request)。

当我看到生命周期步骤(“分期”,“测试”,“QA”,“...”)时,我更愿意为每个需要的步骤设置一个单独的回购库,我想在每个单独的回购中。

+0

这使我想要做的事情更有意义。感谢您的解释。 –

+0

对不起,快速的一个问题。因此,如果我要为我的生命周期步骤设置单独的回购协议,那么我可以通过forkinig我的主回购协议来解决此问题,或者有另一种方法可以实现这一目标,而不会“消耗”我的分支,这样我仍然可以从分叉主人(和其他)回购?希望这是有道理的。再次感谢。 –

+0

@Jerad:由于您的分发私人回购仍然是私密的(http://www.quora.com/If-you-fork-a-private-repository-on-Github-is-your-fork-made-private-by - 默认),也许你可以问一个合作者,反过来,叉叉?但更简单的说,我只是做了我的私人回购的多个克隆,并推回到GitHub上的多个私人回购。 – VonC