我有几个git存储库托管在GitHub上,其中代码用于控制某些特定的实验硬件。所以我最终结束了这种情况:
理想情况下,所有开发都将在我们的笔记本电脑上完成,而工作站副本将是只读的,但这不起作用。无论你怎么努力,总有一些错误需要在实验工作站上解决。然后它变得棘手,因为,比方说,我可能是克隆存储库的人,因为我是那个设置它的人,但也许我的同事坐下来使用硬件并且必须做出一些改变。然后,当他提交和推动时,它看起来像是来自我。这并不可怕,但它只是感觉感到害怕。我认为理想情况下我希望能够使用forks和pull请求强制进行一定数量的代码审查。
我的问题是,有没有其他人有这种工作流程的经验?你是怎么经营的?或者有人对如何管理提出了很好的建议?
我们通常不在实验工作站上使用单独的用户帐户,因为过多的设置是特定于硬件的。相反,工作站只有一个“实验室”登录,每个人都使用。
我有一个想法是为实验室创建一个GitHub帐户,在工作站上使用它,并依靠每个人签署他们的提交。 (我们已经有一个实验室“组织”帐户,我的意思是一个可以创建/提交回购的实际帐户。)
答案 0 :(得分:0)
在您的第一个模型中,您没有叉子,只有克隆(请参阅“Git fork is git clone?”)
从一个克隆中,您可以作为单独的用户推送 你只需要:
.netrc
file on windows to save user and password”config.user
和config.email
)现在,如果该设置不实用(因为涉及.netrc
和git config
管理),那么可以注册提交:请参阅“Is there a way to “autosign” commits in Git with a GPG key?”,但签名除外标记,您可以推送is better than signing all individual commits。
拥有分支(而不仅仅是一个GitHub仓库的本地克隆)可以更好地分离GitHub存储库之间的关注点(其中一个专用于dev,一个用于集成'{ {1}}“)。
并且拉取请求意味着更加可控的集成。