私は、master
ブランチだけで寿命を伸ばしたGitHubレポを持っていて、それにたくさんのコードを送りました。その後私は自分のマシン上にブランチを(git checkout -b development
経由で)ローカルに作成して(git push origin development
経由で)プッシュしましたが、それを変更するだけではありません(つまり、master
とdevelopment
は同じになりました)。git/GitHub上で複数のマスターブランチをマージする
は、別の開発者は、(最新の状態にあった)development
枝のオフfizzbuzz
機能ブランチを作成するを想定し、代わりにmaster
のオフにそれを作成しました。彼女は今、彼女のfizzbuzz
ブランチをGitHubにプッシュしました。
最終的にfizzbuzz
をdevelopment
にマージして、CIビルドとDEV展開を開始します。その後、development
をmaster
に結合します。
しかし、fizzbuzz
がmaster
の代わりにdevelopment
の代わりに作成されたため、これが可能であるとは思われません。それは...ですか?そうでなければ、解決策は何ですか? fizzbuzz
がdevelopment
のブランチになるように "rebase"する方法はありますか(もしそうなら、コマンドとは何ですか?)、あるいは何か別の方法でしょうか?
ありがとうございます@kfb(+1) - 私はそれが 'rebase'を含むと思ったが、私はそれを使用する必要はなかった!私が理解していることを確認するために気をつけなければならないクイックフォローアップの質問:「*は、開発に* fizzbuzzをリベースします」と言うとき、それは彼女が「開発」を分岐したようになることを意味しますか?最初は?そして、これはブランチが同一/きれいである場合にのみ機能しますか?意味するところは、 '開発 'に新しいコードがあり、そこになかったのはどういう意味ですか?再度、感謝します! – smeeb
はい、 'fizzbuzz'は' development'から常に分岐しているようになります。あなたの2番目の質問については、答えは "それは依存する"です。 [このリンク](https://git-scm.com/book/en/v2/Git-Branching-Rebasing)では、一般的なリベースと[このリンク](https://help.github。 com/articles/resolving-merge-conflicts-a-git-rebase /)では、競合が発生した場合に何が起こるかについて説明しています。 – kfb