GitKrakenでは、コミット全体を元に戻すのではなく、1つのファイルの変更を以前のコミットに戻すことができますか?
Git感覚のrevert
は、コミット時にのみ実行できます。元に戻されたコミットの変更を完全に無効にする新しいコミットが導入されています。 こちら を参照してください。 GitKrakenはこれをサポートしています:コミットを右クリックして、Revert <branch> to this commit
。
ただし、達成したいことはgit checkout
を介して実行できます。 GitKrakenが単一のファイルに対してこの機能をサポートしているとはまだ思っていません。ただし、コマンドラインは使用できます。
git checkout <commit> <file>
以前のバージョンのファイルをチェックアウトします。これにより、作業ディレクトリにある
<file>
が<commit>
からのコピーとまったく同じになり、ステージング領域に追加されます。
ドキュメントは here にあります。
したがって、git checkout HEAD~1 <filename>
は、単一のファイルを現在のHEAD
の前のコミットにリセットします。
これはGitKraken UIで実行できますが、少し回り道があります。
これにより、復元したい1つのファイルの追加のみが残ります。コミットすると、1つのファイルが返されます。
これは1つだけでなく、多数のコミットにわたって機能することに注意してください...しかし、これらのコミットのすべてからすべてをロールバックし、すべてのロールバック(1つを除く)を破棄する必要があるため、大規模な場合は非常に遅くなる可能性があります変更。このような状況では、kowskyの回答で提案されているようにgit CIを使用する方がおそらく良いでしょう。
最後のコミットに対してUNDOを実行して編集し、その後強制プッシュを実行して上書きすることができます。とてもうまくいく