はじめに ちょこちょここういう事態が発生するので、自分用にまとめることにしました。 git pushには-f,--forceオプションがありますが、git pullにはありません。 しかしやりたいイメージはそういうことです。 結論だけ書くと 対象をmasterブランチとします。 ローカルの修正は消えますので、要注意です。 # masterブランチにチェックアウト git checkout master # リモートの最新の状態を取り込む git fetch origin master # リセットする git reset --hard origin/master もし既にmasterブランチにいて、git pullやgit mergeによりコンフリクトを起こしてたら… # merge処理の取り消しを行う git merge --abort # リモートの最新の状態を取り込む git fet