key_amb主にIT関連の技術メモこの広告は、90日以上更新していないブログに表示しています。2013-02-08gitでローカル編集/add/commit/pushを取り消す(まとめ)GitTweetsvnのときはrevertすればいいのだが、gitではリモートリポジトリにpushするまでのステップ数が多いのでややこしい。各ステップで巻き戻し方が異なるので、使い分けが必要。この記事でそれらの方法についてまとめる。し直すのが最も確実である。これはたぶん、最後の手段になる。これだとpushは取り消せないので、そのやり方は後述する。ローカル編集を消したい。addすらしていない状態だけど、行った変更を取り消したい。そんなときは以下を打つ。<path><path>にディレクトリを指定すれば、再帰的にcheckoutしてくれる。ワーキングツリーの変更を全部取り消していい場合は、次のコマンドでもいい。コマンドの使い方を覚えればなんでも取り消すことができる。この使い方についても後述する。間違ってaddしてしまった!これを取り消すには以下のコマンドを打つ。<file>--hardオプションをつけると、ワーキングツリーの変更も破棄される。addとローカル編集をまとめて破棄することが出来る。--hardオプションなしと同じことは、次のコマンドでも出来る。<file>間違ってcommitしてしまった!次のコマンドを打つ。HEAD^HEAD^はHEADの1つ前のリビジョンである。間違って2回コミットしてしまったときは、HEAD^^を指定すればいい。--softオプション、--hardオプション、オプション無しの場合の挙動の違いは次の通り。addされた状態まで戻る。HEADの位置をHEAD^に移動するだけ。addする前まで戻る。--softのときと同様、ワーキングツリーの内容はそのまま。ワーキングツリーの内容まで含めて、HEAD^の状態まで戻る。ローカル編集は完全に破棄される。間違ってpushしてしまった!次のコマンドを打つ。HEAD^:masterこの後、ローカルのcommitも取り消すなら、上の手順で行う。murankの日記gitで共用リポジトリにpushした変更を取り消す。このブログは証明できない。リリースするやってみると意外と簡単でした。pullすると、...2013-02-05gitのコミットログを汚さない方法gitでは不都合な歴史を削除することができる。(1)はてなブログをはじめよう!key_ambさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。