1. ホーム
  2. git

[解決済み] Git プッシュ後にコミットしたファイルを削除する

2022-03-10 04:50:52

質問

Gitでコミットしたファイルを元に戻すことは可能ですか?GitHub にコミットした後、プッシュしたくないファイル (変更が終わっていない) があることに気づきました。

どうすればいいですか?

update: より安全な方法を追加しました。

推奨される方法です。

  1. 以前の(変更されていない)ファイルの状態を確認します。ダッシュが2つあることに注意してください。

    git checkout HEAD^ -- /path/to/file
    
    
  2. コミットしてください。

    git commit -am "revert changes on this file, not finished with it yet"
    
    
  3. 押すだけ、力いらず。

    git push
    
    
  4. やりかけの仕事に戻って、もう一度、(矢印の上を3回)やってください。

    git checkout HEAD^ -- /path/to/file
    
    

事実上の「アンコミット」。

リポジトリ HEAD の最後のコミットを変更することで、誤ってプッシュしてしまった作業を隠蔽します。一方、すでにプッシュしてしまった同僚と衝突する可能性もあり、白髪が増え、自分のローカルブランチのヘッドと中央のヘッドを照合するのに多くの時間を費やすことになるでしょう。

最後のコミットからのファイルの変更を削除する場合。

  1. を実行し、ファイルを最後のコミット以前の状態に戻す。

    git checkout HEAD^ /path/to/file
    
    
  2. 最後のコミットを元に戻したファイルで更新するには、次のようにします。

    git commit --amend
    
    
  3. 更新されたコミットをリポジトリにプッシュするには、次のようにします。

    git push -f
    
    

本当に、前に述べた好ましい方法を使うことを検討してください。