[解決済み] Git のローカルコミットを捨てる
2022-03-02 23:27:26
質問
悪いチェリーピックのせいで、私のローカル Git リポジトリは現在オリジンより 5 コミット進んでおり、良い状態とは言えません。これらのコミットをすべて削除して、もう一度最初からやり直したいと思っています。
もちろん、作業ディレクトリを削除して再クローンすればいいのですが、GitHub からすべてをダウンロードし直すのはやりすぎで、時間を無駄にしそうです。
もしかしたら
git revert
が必要なのですが、結局は
10
たとえコードそのものを正しい状態に戻したとしても、オリジンより先にコミットしてください (あるいは 6 回でも)。この30分をなかったことにしたいんです。
これを実現する簡単なコマンドはないのでしょうか?明らかなユースケースのように思えるのですが、そのような例は見当たりません。
なお、この質問は、特に コミット , ではない についてです。
- 未追跡のファイル
- ステージングされていない変更
- ステージングされているが、コミットされていない変更
解決方法は?
余分なコミットが自分だけにしか見えない場合は、次のようにすればよいでしょう。
git reset --hard origin/<branch_name>
を実行して、オリジンがある場所に移動します。これにより、リポジトリの状態は直前のコミットにリセットされ、ローカルでの変更はすべて破棄されます。
を行うことは
git revert
を作る
新しい
を削除するためにコミットします。
古い
のコミットを、全員の履歴が正当に保たれるようにします。
関連
-
[解決済み] Git で直近のローカルコミットを取り消すには?
-
[解決済み] Gitブランチをローカルやリモートで削除するには?
-
[解決済み] git pull」と「git fetch」の違いは何ですか?
-
[解決済み] コミット前に 'git add' を取り消すにはどうすればよいですか?
-
[解決済み] リモートのGitブランチをチェックアウトするには?
-
[解決済み] Git リポジトリを以前のコミットに戻すにはどうすればよいですか?
-
[解決済み] 現在のGit作業ツリーからローカル(未追跡)ファイルを削除する方法
-
[解決済み] Gitを使って最後のXコミットをまとめる
-
[解決済み】"git pull" でローカルファイルを強制的に上書きするには?
-
[解決済み】ローカルのGitブランチの名前を変更するには?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】未マージファイルがあるため、Gitマージができない
-
[解決済み] [Solved] originにプッシュしようとすると、Gitが「No such remote 'origin'」と言うのはなぜですか?
-
[解決済み] 複数のコミットをチェリーピックする方法
-
[解決済み] git ls-remote と git ls-remote origin の違い。
-
[解決済み] Git エラー : 'upstream' は git リポジトリでないようです。
-
[解決済み] git update-index --assume-unchanged <file> を元に戻す。
-
[解決済み] Gitのエラー「object file ... is empty」はどうすれば直せますか?
-
[解決済み] "fatal: This operation must be run in work tree." というメッセージが表示されるのはなぜですか?
-
[解決済み] リモートブランチにプッシュできない、ブランチに解決できない
-
[解決済み] ローカルのGitの変更を削除するさまざまな方法