💡

VSCodeのSource ControlでSync Changesでエラーが発生したとき.

2025/01/16に公開

発生した問題

VSCodeのSource ControlでCommitしたものの,Sync Changesでpushに失敗してエラーを吐いてしまい,以降のpushができなくなった.

解決策

ターミナルを開く.
以下のコマンドを使用すると,直前のcommitを取り消すことができる.

git reset --soft HEAD^

ざっくりいうと,--softは「commitのみを取り消す」の意味で,HEAD^は「直前のcommit」の意味.
resetコマンドは他にオプションがあるので,参考文献に挙げたサイトなどを参照してみてほしい.
commitの取り消しができたら,問題のあるファイルをGitの出力を頼りに修正すればよい.

エラーの原因

自分の場合,以下のようなエラーが出てpushに失敗した.

remote: error: See https://gh.io/lfs for more information.        
remote: error: File ***.zip is 118.38 MB; this exceeds GitHub's file size limit of 100.00 MB        
remote: error: GH001: Large files detected. You may want to try Git Large File Storage - https://git-lfs.github.com.        
To https://github.com/...

ざっくりいうと,ファイルサイズが大きすぎてGitHubのファイルサイズ制限に引っかかってしまっているとのこと.
そもそも間違えてcommitしたファイルだったので,上記コマンドでcommitを取り消し,該当ファイルを取り除いて再度commitしたらうまくいった.

参考文献

https://git-scm.com/book/ja/v2/Git-のさまざまなツール-リセットコマンド詳説

Discussion