[解決済み] ファイルのアンリンクに失敗しました
質問
git pullをしようとしているのですが、以下のエラーが発生します。
ファイル 'lib/xxx.jar' のアンリンクに失敗しました。もう一度試してみるべきですか?(y/n)
yを選んでもnを選んでも、引いたり押したりできる状態にならないのですが。
どうすればいいですか?
これは通常、あるプロセスがまだその特定のファイルを使用していることを意味します(まだハンドルがあります)。
(Windowsの場合。
ProcessExplorer
はそのようなプロセスの追跡が得意です)
他のプログラムを終了し、もう一度
git pull
.
という選択肢もあることに注意してください。
GIT_ASK_YESNO
変数
.
2019年1月更新
それが、Git 2.21 (2019年第1四半期) で、さらに修正されるはずです、" として。
git gc
"と"
git repack
"は、不要と判断した開いているパックファイルを削除する前に閉じなかったので、開いているファイルを削除できないプラットフォームでは機能しませんでした。
これは修正されています。
参照
コミット 5bdece0
(2018年12月15日)によるものです。
ヨハネス・シンデリン(
dscho
)
.
(によって統合されました。
ジュニオ・C・ハマノ--。
gitster
--
で
コミット 5104f8f
, 2019年1月18日)
gc
/
repack
: 必要に応じてリリースパックを提供
Windowsでは、プロセスによって保持されているハンドルがある場合、ファイルを削除したり名前を変更したりすることはできません。
それを改善するために、私たちは
close_all_packs()
という関数があります。
先ほど、パックがリリースされる直前の
git gc
がスポーンされた場合に備えて
gc
は、不要になったパックを削除することを望んでいます。
しかし、この開発者は、以下のことを忘れていました。
gc
を経由してすべてのパックを統合する場合など、パック自体を手放す必要があります。
--aggressive
オプションで指定します。
同じく。
git repack -d
は古くなったパックを削除したいので、すべてのパックハンドルも閉じる必要があります。
2016年1月更新
Git 2.8(2016年3月)で修正されるはずです(下記のGit 2.19, Q3 2018も参照)。
参照
コミットd562102
,
コミット dcacb1b
,
コミット df617b5
,
コミット 0898c96
(2016年1月13日)によるものです。
ヨハネス・シンデリン(
dscho
)
.
(によって統合されました。
ジュニオ・C・ハマノ--。
gitster
--
で
コミット3c80940
, 2016年1月26日)
fetch
: ガベージコレクションの前にリリースされるパックファイル
自動gcを行う前に、再パックやガベージコレクトが必要な場合に備えて、パックファイルの解放を確認する必要があります。
を実行する多くのコードパスがあります。
gc --auto
これは、開いているファイルを削除できないシステムにとって不親切でした。
現在は、パックを閉じてから行うようになりました。
これで解決
git-for-widows
問題点500
.
を見てみると
その新しいアプローチを検証するために使用されるテスト
を使うことで、(Git 2.8 がまだリリースされていないので)可能な回避策は、人為的に
gc.autoPackLimit
.
git config gc.autoPackLimit 10000
git fetch
git config gc.autoPackLimit 50 # default value
git 2.8.4 (2016年6月) について言及しています。 755号 も軽減されるはずです ( コミット 2db0641 ):
一時ファイルハンドルが子プロセスに継承されていないことを確認する
実は
git-for-windows
500号
は、Git 2.19, Q3 2018で本当に修正されました。
"をご覧ください。
Git - ファイルのリンク解除
.idx
と
.pack
は失敗しました(このファイルへのハンドルを持つ唯一のプロセスは
git.exe
)
"
関連
-
[解決済み】git pullの取り消し、レポを古い状態に戻す方法
-
[解決済み] Git が追跡したファイルを .gitignore に登録したまま「忘れる」ようにするにはどうしたらいいですか?
-
[解決済み] ファイルをリセットしたり、特定のリビジョンに戻したりするにはどうすればよいですか?
-
[解決済み] Gitで特定のタグをダウンロードする
-
[解決済み] Git のローカルコミットを破棄する
-
[解決済み] Gitのプッシュでユーザー名とパスワードが必要
-
[解決済み] detached HEADとmaster/originの連携はどうすればいいですか?
-
[解決済み] Gitのプッシュを正しく強制する方法は?
-
[解決済み】"git pull" でローカルファイルを強制的に上書きするには?
-
[解決済み】Gitバージョン管理でファイルの変更履歴を見る
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】ファイルのアンリンクに失敗しました。もう一度試してみるべきですか?
-
[解決済み] PowerShell フォルダ権限エラー - 一部またはすべての ID 参照を変換できませんでした。
-
[解決済み] npm windows install globallyでnpm ERR!余計なお世話になる。
-
[解決済み] マイクロソフト既知のDLL
-
[解決済み] Windowsの能書きは?
-
[解決済み] Windowsでフォルダへのアクセスを回復する方法
-
[解決済み] 'ant' は内部コマンドまたは外部コマンドとして認識されません。
-
[解決済み] セットの/pはどういう意味ですか?
-
[解決済み] WindowsのcmdでCD /Dスイッチの理由は何ですか?
-
[解決済み] Windows PowerShellの環境変数を設定する