シナリオ:
- githubには、ユーザー「guru」と「bigsw」というプロジェクトの彼のprimamyリポジトリがあります。このプライマリリポジトリにはいくつかのブランチがあります。("rel1"、 "rel2"、 "master")
- このプロジェクトには、user1とuser2によって作成された2つのフォークがあります。
各abobeフォークには、プライマリリポジトリと同じブランチに加えて、特定の作業を含む1つの異なるブランチがあります。したがって、user1はbigswをフォークして「utf8」というブランチを作成し、user2はブランチ「mongo」を作成しました。
今、私はプロジェクトに参加したいと思っています。私の仕事には、次のブランチが必要です。
- guru / bigsw:master
- user1 / bigsw:utf8(読み取り:USER / REPO:BRANCH)
- user2 / bigsw:mongo
推奨されるワークフローは何ですか?
私の考えは:
- githubで教祖/bisgwをフォークします(myname / bigswを取得します)
git clone git://github.com/myname/bigsw
(ローカルコピーを取得)user1 / bigsw:utf8ブランチのローカルコピーの同期を維持し、同様にuser2のフォークからのブランチ "mongoのコピーが必要です。したがって、user1とuser2から完全なリポジトリを複製する必要はありません。それぞれから1つのブランチのみです。
git remote add user1 git@github.com:user1/bigsw.git
git fetch user1
git checkout -b utf8 user1/utf8
- 同様に、user2のmongoリポジトリの場合(最初の2つのコマンドについてはよくわかりません)
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-いくつかのアイデアを提供しますが、よくわかりません
- 2つの異なるリポジトリからの2つのブランチを1つのリポジトリに結合するにはどうすればよいですか?
- GitHubでの分岐と分岐
- git2つの異なるリポジトリの同じディレクトリをマージする
- https://help.github.com/
しかし、それでも暗闇の中でさまよう... :(