git/index.lockを解除し無事にadd/commitできました。

git/index.lock解決












普段はSourcetreeを使ってGUIでgitを管理しています。

Sourcetreeは非常に便利なのでぜひ,使ってもらいたい。

【Sourcetreeインストール】git管理はこれで決まり

2019年5月12日

そして,今回ちょっとしたソース修正を行い「さぁcommitしよう」としたときに

fatal: Unable to create '.git/index.lock': File exists.

なんかよく分からないが怒られた。

.git/index.lockとは

エラーの文言的には,index.lockってファイルが存在しているからエラーになってるっぽい。

なんや,index.lockって。。

git/index.lockとは
同じgitのリポジトリ内で同時に複数の処理を行わないための排他制御を行うもの。
つまり,index.lockが存在するということは,裏で他のgit操作が行われている。

ならば,他のgit操作が終了するのを待てばいい。
もちろん,時間をおけばgit操作できるようになるのだが,「そんなの待ちきれないよ」って方は別の解決法で。

git/index.lockを削除

index.lock削除してしまっても構わない。

$ rm .git/index.lock

ワーキングディレクトリ内にて,このコマンド一発で解決です。

その後,もう一度Pushしてみると,見事解決した。

 

ありがとう

余談ですが,これでも解決しない場合は以下をお試しください。

git index.lock permission denied

権限がないよってことで怒られた場合。

$ sudo rm .git/index.lock

sudoコマンドで権限を持たせてやればいい。

.gitディレクトリの権限に依存するので,permission deniedのエラーが出ない場合もある。(ちなみに僕も出ていない)

git index.lock 復活

先程のindex.lock削除コマンド

$ rm .git/index.lock

を実行してもindex.lockが消えない。もしくは復活している場合

.git/.COMMIT_EDITMSG.swpファイルの削除でうまくいくらしい
しかし僕の環境では.git/COMMIT_EDITMSGというファイルしかない。

その場合は,.git/COMMIT_EDITMSGを削除してやるとOKらしい。

つまり

$ rm .git/index.lock
$ rm .git/COMMIT_EDITMSG
または
$ rm .git/.COMMIT_EDITMSG.swp

これで,おそらくはgit index.lockエラーの解決法は網羅できたと思う…

git用語・コマンド一覧

最後に,git用語やコマンドがたくさんあって「覚えるのがめんどくさい」「こんなに覚えきれないよ」って方向けに過去記事で基本的なgit用語とコマンドをまとめています。

【ブックマークおすすめ】gitコマンド一覧 〜使い方から用語説明までまとめてみた〜

2019年7月6日

ぜひ,ブックマークしてお使いください。

★人気の記事一覧

合法的に女の子に精液の匂いを嗅がせる方法

【精子を食べる!?】食ザーが理にかなっているというお話

[Froala Design Blocks ]無料でオシャレなサイト作成ができるHTMLのテンプレート

スムージーは本当に健康に効果があるのか化学の観点でのみ考えてみる












★人気の記事一覧

合法的に女の子に精液の匂いを嗅がせる方法

【精子を食べる!?】食ザーが理にかなっているというお話

[Froala Design Blocks ]無料でオシャレなサイト作成ができるHTMLのテンプレート

スムージーは本当に健康に効果があるのか化学の観点でのみ考えてみる

気に入ったらLet's Share!!

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

ABOUTこの記事をかいた人

ちゆり

6年間化学を専攻していたのになぜか一部上場のIT企業のエンジニアへ。脱サラ田舎暮らしに憧れ,なんだかんだプログラミングが好き。口癖は仕事辞めたい。凡人にはなりたくない凡人。