0

我对 Git 有点陌生。所以,我的任务是为 3 个开发人员创建 3 个分支,这些分支只连接到他们的分支并且只与他们自己的分支一起工作。像这样的东西:

developer 1 == branch 1
developer 2 == branch 2

任何帮助或教程都会有所帮助。

4

4 回答 4

3

使用 Git 创建的所有分支最初都是私有的,而主干本质上是一个分支。您所描述的是 Git 的默认行为。

查看这篇文章,了解 Git 中的分支处理有何不同。此外,本教程对于从 Subversion 迁移到 Git 的人很有用。

于 2012-07-22T21:59:07.917 回答
0

他们应该这样做:
开发人员 1:git checkout branch1
开发人员 2:git checkout branch2
开发人员 3:git checkout branch3
所以他们将使用自己的分支。push只会到他们被结帐的分支机构。
但如果他们愿意,他们可以使用另一个分支。因此,如果您想拒绝他们使用另一个分支,只需为每个开发人员创建单独的存储库。

于 2012-07-22T21:54:56.990 回答
0

Git 本身不包含任何访问控制。

Gitolite是一个 Git 服务器,它提供访问控制,包括为不同的分支设置访问权限。

于 2012-07-22T21:51:06.707 回答
0

我建议您在http://progit.orghttp://sethrobertson.github.com/GitBestPractices中阅读 git 工作流程

正如 seanhodges 建议的那样,默认情况下,当每个开发人员克隆上游 repo 时,他们将拥有分支的私有版本,例如 master。他们可以在当地为所欲为。当他们准备好与其他人分享时,他们会推/拉/等等。没有特别的理由说明它们需要位于名为“dev1”的分支上。如果其他人想查看他们的东西,他们可以通过将 dev 的 repo 添加为远程,然后他们可以查看 dev1/master。

如果你想按照你建议的方式去做,你当然可以。只是git checkout $USER。人们发现创建功能分支(特定功能的分支)比创建用户分支更有用。

如果您正在谈论访问控制,那么肯定 gitolite 可能是其他答案中提到的最佳选择,但实际上除了在最正式的情况下,您没有理由需要打扰。如果用户搞砸了,您可以随时清除这些更改或恢复到较早的状态。

于 2012-07-22T22:04:07.503 回答