设想:
- 在 github 上存在用户“guru”和他的名为“bigsw”的项目的主要存储库。这个主仓库有几个分支。(“rel1”、“rel2”、“主”)
- 这个项目有 2 个由 user1 和 user2 制作的分叉。
- 每个 abobe 分叉都具有与主存储库相同的分支,以及一个包含其特定工作的不同分支。因此,user1 分叉了 bigsw 并创建了一个名为“utf8”的分支,而 user2 创建了一个分支“mongo”。 
- 现在我想加入该项目,对于我的工作,我需要以下分支: - 大师/bigsw:大师
- user1/bigsw:utf8(读作:USER/REPO:BRANCH)
- 用户 2/bigsw:mongo
 
推荐的工作流程应该是什么?
我的想法是:
- 在 github 上 fork guru/bisgw(这样会得到 myname/bigsw)
- git clone git://github.com/myname/bigsw(获取本地副本)
- 想要保持 user1/bigsw:utf8 分支的同步本地副本,并且同样想要来自 user2 的 fork 的分支“mongo”的副本。所以,我不需要从 user1 和 user2 克隆完整的 repo,每个分支只需要一个分支。有点像: - git remote add user1 git@github.com:user1/bigsw.git
- git fetch user1
- git checkout -b utf8 user1/utf8
- 同样对于user2的mongo repo(我不确定前两个命令)
 
 
- git checkout -b i18n(创建我自己的分支 - 我将在其中进行更改)
- 编辑源代码(我希望在上一个命令之后它们会自动“进入”“i18n”分支)
- git push origin i18n(将我对 github 的更改推送到 myname/bigsw:i18n 分支)
- 将来某个时候会为我的 i18n 分支提交拉取请求/不知道如何,但还不需要它;)/
以上是正确的工作流程吗?如果是,问题:
- 如何将 user1 的分支“utf8”和 user2 的“mongo”分支克隆到我的本地机器中 - 3.) 中的命令是否正确?
- 如何保持同步(所以我想在我的本地机器上同步所有分支) - 我的更改将只在我的分支“i18n”中。
我是 git/github 的新手——不幸的是需要从这个复杂的模型开始(至少对我来说)。我学到了一些挖掘https://help.github.com/的东西,但并不理解所有的“git 哲学”。
我已经读过:
- https://stackoverflow.com/a/5458814/869025(这很有帮助)
- https://stackoverflow.com/a/9153737/869025 - 给出一些想法,但我不确定
- 如何将来自两个不同存储库的两个分支合并到一个存储库中?
- GitHub 中的分叉与分支
- git合并两个不同存储库的相同目录
- https://help.github.com/
但仍然在黑暗中徘徊...... :(