2016-10-14 6 views
0

私のワークフローでは、masterとリモートブランチbranch1があります。私はbranch1から分岐し、branch2を作成しました。私はbranch2branch1で自分の仕事を続け、他の開発者によって多くのことが行われました。私がやった後、私はbranch2への私の変更をbranch1の最新コミットの上に私の変更をリベースしたことをコミットしました。 Gitログインbranch2は私のコミットをbranch1の最新のコミットの上に表示するので、そこにはすべてよく見えます。しかし、branch1git logに私のコミットは見られません。 git rebaseを実行した後にgit pushを実行する必要がありますか?はいの場合は、branch1またはbranch2にプッシュしますか?git rebaseの後にどのブランチにプッシュするか

答えて

1

branch1の一部ではないため、変更内容はbranch1に反映されません。

branch2branch1の後にと表示されます。したがって、branch1は、branch2の前にです。 branch1の観点からは、branch2はまだ起こっていません。

あなたが見ているものは正しいです。あなたは「最終」「ライブ」や支店などmasterブランチを使用している場合は、マスターにbranch2をマージすることもできます。これは、masterに両方のブランチから変更をもたらすだろう

git checkout master && git merge branch2 


また:branch1がリモートであるとbranch2がローカルであるという事実は、本当にこの場合には重要ではありません。コミット自体は両方の場所にあります(gitが配布されているため)。 "ブランチ"は、それらを簡単に管理できるように、異なるコミットに与えられた名前です。

+0

代わりに 'git checkout branch1 && git merge branch2'を実行できますか?我々は、チェックとスタッフの束の前にマスターに合流しないでください... – newkid101

+0

ええ、あなたはそれを行うことができます、確かに。これは 'branch1'をツリー内で前方に移動させ(早送り)、' branch2'の位置になり、2つのブランチを同じにします(同じコミットを指し示す)。 – willoller

+0

サイトの注意:guiは、特にgitを学ぶときに、このことを視覚化するのに本当に役立ちます。今私のfavはhttps://www.gitkraken.com/ですが、ymmvです。 – willoller

関連する問題