は私が8つのコミットし、一方の分岐(マスター)の線形Gitの歴史を持っていると仮定します。作業ツリーにgitコミットを適用せずに追加しましたか?
1 -> 2 -> 3 -> 4 -> 5 -> 6 -> 7 -> [8=master]
私は(私はgit branch -f master 4
を行うことができます)4にマスターを移動したい:
1 -> 2 -> 3 -> [4=master] -> 5 -> 6 -> 7 -> 8
作業ツリーは状態4にあります。4 -> 8
の変更をパッチとして自分の作業ツリーに適用したいと考えています。
つまり、.gitフォルダの状態に影響を与えずに、4->8
の変更を私の作業ツリーに適用したいと思います。この後、作業ツリーは状態8にあるはずですが、コミットされた状態とマスターブランチは状態4になければなりません。
もう一つの方法:マスターを4に移動した直後に、私は4-> 8インデックスに追加することなく作業ツリーに追加することができます。結果は同じでなければなりません。
これを行う最も簡単な方法は何ですか?あなたが実際に「unstaged」ビットを気にしない場合は、あなたの場合は
また、 'git diff 4..8 | git apply' – cmbuckley
私はあなたの方が好きです。 – jthill