VSCodeでのgitエラーについて

参照仕様をリモートにプッシュできません。最初に 'Pull' を実行して変更を統合してください。

というエラーがなぜか急に出てきました.

まぁ理由はちょっと思い当たるところがあるのですが..

 

その解決ができたので,書いておきたいと思います.

参考ページ

www-creators.com

git pull で、ローカルを強制上書きする方法

実際には「git pull --force」というオプションは存在しませんので、別のコマンドが必要になります。

ローカルのmasterを、強制的にリモートのmasterに合わせる

// 1) リモートの最新を取ってきておいて・・
$ git fetch origin master

// 2) ローカルのmasterを、リモート追跡のmasterに強制的に合わせる!
$ git reset --hard origin/master

「git pull の強制」というよりは、要は「reset」という方が正しいですね。

もちろん、git reset --hardは、手元にある作業ツリーとインデックスの変更内容は、すべてふっとんで消えてなくなりますので、実行前は注意して慎重に行って下さい。

一般的にgitでは、「コミットされていない変更」は、一度失うともう帰ってこないですので、不安な人は必ず実行前に、git statusして、作業ツリーの状態を確認して下さい。もし、作業ツリーとインデックスを別の場所に退避しておきたかったら「git stash」などがあります。

 

 これをやってみるとcommitしてpushすることができました.

 commitしたものが削除されるので保存しておくことが重要です.