読者です 読者をやめる 読者になる 読者になる

/var/www/yatta47.log

やったのログ置場です。スクラップみたいな短編が多いかと。

git pullが失敗して、今までの修正がいらない場合はすべて破棄してしまえばいい。

git

git pullしたときに以下のエラーが出てきてpullできなかった。

$ git pull
remote: Counting objects: 26, done.
remote: Compressing objects: 100% (26/26), done.
remote: Total 26 (delta 19), reused 0 (delta 0)

・・・

error: Your local changes to 'lib/api/XXXXX.rb' would be overwritten by merge.  Aborting.
Please, commit your changes or stash them before you can merge.

状況的にはGithub上に最新のものがあって、ローカル上はちょっと手を加えたものがあるといった差分がある状態。その状態で、Github上のものを持ってきたい(ローカル環境を最新にしたい)場合どうすればいいのか?わからなかったので覚書。

 

コマンド的にはgit chekcoutで可能

エラーコメント Please, commit your changes or stash them before you can merge. に書いてある通り、コミットするか、stash(一時退避)させるかで解消できる様子。でも今回は今の修正は破棄しても大丈夫な状態だから、コミットとかをせず、なかったことにすることにしました。

その場合の方法がchekcout

git checkout lib/api/XXXXX.rb

これで作業がなくなったことになるようです。最後にgit statusで何もないことを確認して改めてgit pullを実施したらうまくいきました。

よしよし。

 

ちなみに、今回の自分の場合はファイルが一つだけでしたけど、すべてのファイルの場合は

git checkout .

となるようです。

 

終わりに

参考にしたサイトはこちら。

qiita.com

今回紹介した作業以外に「作業を一時退避」とかいろいろと方法が書いてあるので、見てみるといいと思います。

 

そして以下のサイトも。

qiita.com

今回、自分の遭遇した問題はなかったのですが、今後いろいろな問題に遭遇すると思うので、ここも見ておこうと思います。

 

Gitも奥が深い。どんどん操作して体で慣れていかないとな。

広告を非表示にする
Real Time Web Analytics