[英]GIT pull failed: 'unable to unlink file: invalid argument'
新的 GIT 用戶在這里管理 Windows 服務器上的 Moodle 課程 web 站點系統。 嘗試對核心代碼進行第一次 Pull 更新(使用 TortoiseGit),但它不起作用。 由於“無效參數”,Git 無法取消鏈接任何要更新的 200 多個文件的舊版本。 我不知道那是什么意思。
這是我關閉 210 個錯誤對話框后的樣子: tortoisegit
我已經重新啟動了服務器並搜索了 web 的想法,但我不知道接下來要嘗試什么。
任何想法將不勝感激
我也因該錯誤而損失了幾個小時。
就我而言,我收到此錯誤是因為某些文件已被另一個程序鎖定。 我不得不關閉所有東西,然后我才能再次拉動。
希望這對某人有幫助:)
錯誤消息顯示 git 無法取消鏈接的文件名。 在 windows 中,您可以 go 到Start Menu > Resource Monitor > CPU tab > Associated Handles
並搜索文件名(不是完整路徑),然后您將獲得進程鎖定該文件的結果。 就我而言,它是explorer.exe
。 因此,我終止了該進程,git 再次按預期工作。
我想您可以通過查找鎖定文件的進程來使用其他操作系統來做同樣的事情。
嘗試在使用Tortoisegit
時關閉任何其他工具
嘗試從 gitlab 中提取時,我也遇到了取消鏈接問題。
根據 ivan866 和 Nicolas Leucci 的回答,為了解決問題,我只需在管理模式下打開我的 SourceTree 即可解決我的問題。 我想 SourceTree 沒有足夠的權限來正確處理權限。 總之值得一試
該問題與文件權限有關。 在 Windows 7 上使用外置驅動器后可以出現,然后在 Windows 10 上再次出現。 特別是在 hibernate 模式下離開第一台計算機(即首先使用的計算機)並打開應用程序是有風險的 - 在另一台計算機上使用這些文件但使用相同的應用程序后重新連接驅動器后,許多打開的文件可能會損壞。
可以使用 CHKDSK /f 修復,但很可能會刪除混亂的文件。
我重新啟動了將“有問題”文件拉入其中的電腦,同時我關閉了另一台電腦上的 IDE,該電腦正在使用該文件並從中推送它。 有效
我在 InteliJ 中運行一個程序,並停止它釋放文件。 之后它起作用了
如果解決方案在 IDE 中打開,則會出現此問題,因為文件已被鎖定。 嘗試關閉解決方案,然后重新嘗試操作。
對我來說,我得到:
“錯誤:無法取消鏈接舊的 'Library/ArtifactDB':無效的參數錯誤:無法取消鏈接舊的 'Library/SourceAssetDB':無效的參數致命:無法將索引文件重置為修訂版 'HEAD'。”
一旦我關閉 Unity Git 就能夠正常工作。 我認為 Unity 權限一定讓它 go 很有趣。
我在合並分支時遇到了這個問題。 使用管理員權限打開 Powershell 並在那里執行合並有幫助。
就我而言,盡管重新啟動計算機並關閉了我運行的所有 IDE,但我仍然遇到問題,並且嘗試在 sudo 模式下運行 git pull 返回了不同的錯誤。 解決方案是你使用(在本地,所以它不是安全問題) sudo chmod 777 path/to/folder/of/file
和sudo chmod 777 path/to/folder/of/file/specificFile.ext
。
對我來說,我不得不關閉 Unity。 從現在開始,我只在 Unity 關閉時使用推/拉。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.