[英]Intellij 2017.1.1 “Show Diff with Local” to compare git commit with local changes disabled for folders
[英]IntelliJ's show diff always compare with a same old git commit
我在IntelliJ中觀察到這是一個奇怪的問題。 show-diff總是將當前本地版本與git的舊提交(不是最新提交)進行比較。 理想情況下,應將其與最新提交進行比較。 如果文件是在該提交之后創建的,則錯誤為“不是有效的對象名稱”。 要繞過此問題,我必須右鍵單擊-> Git->比較,然后選擇最新版本。 任何線索可能是什么問題? 我試圖在IntelliJ項目文件夾中搜索此提交ID,但找不到任何提交ID。 還已將Git CMD更新到最新版本,但沒有緩解。
要顯示本地更改中文件的差異,IntelliJ會調用git log -n1 HEAD -- path/to/file
以獲取最新修訂的哈希,然后使用git cat-file -p hash:path/to/file
獲取文件內容。 后者是“無效對象名稱”錯誤的結果。
似乎HEAD由git錯誤地解決了,我對此表示懷疑,或者某些東西(例如Git Scope之類的第三方插件)改變了邏輯。
另一個可能的原因-一個棘手的嵌套Git回購,其中包括直到問題提交為止的歷史記錄。 在這種情況下,可能會從該存儲庫中請求Diff。
您可以檢查錯誤,並且IDE執行的所有命令都會啟用#git4idea.commands.GitHandler
調試日志記錄(使用幫助-調試日志設置... )。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.