2017-03-10 9 views
0

私は現在のブランチの履歴を保持したいが、ブランチの状態を変更して別のブランチとマッチさせる新しいコミットを追加する - 現在の作業ディレクトリ内のファイルを他のブランチにある状態に上書きまたはリセットする、私は新しいコミットを作成することができます。これはどうすればいいですか?インデックスやHEADを変更せずにGit作業ディレクトリの内容を上書きするにはどうすればいいですか?

私はcherry-pickを実行できません。これは、指定されたコミットとその親との差分を現在のHEADに適用しようとするためです。

答えて

0

あなたの作業ディレクトリを他のブランチ/コミットの状態に 'リセット'するのではなく、現在のブランチとターゲットブランチの間にdiffを作成し、diffを適用する必要があります。

枝の上にあなたがgit checkout --patch SHA-or-branch-name .

と、そのリポジトリの最上位ディレクトリにとにコミット追加したいときは、次に適用するハンクどの選択するかではない、単一の磁器のコマンドでこれを行うことができます適用し、git commitを行います。

また、すべてのハンクをgit diff SHA-or-branch-name | git apply -で適用し、コミットします。

関連する問題