我剛剛在 GitHub 上創建了一個新存盤庫,并嘗試最初推送我的本地 Java 專案。
我在我的 GitHub 帳戶中添加了 ssh 密鑰,我假設它被 Eclipse 正確參考。
我只在嘗試推送時收到此錯誤訊息:
Can't connect to any repository:
[email protected]:MaximStein/MyProject.git
([email protected]:MaximStein/MyProject.git: Missing unknown
366362as232d670123a2267b4879bbd01d142426)
有任何想法嗎?
uj5u.com熱心網友回復:
您的Git 存盤庫似乎已損壞或至少處于無效狀態。
根本原因似乎是Missing unknown 366362as232d670123a2267b4879bbd01d142426這意味著某些東西(可能是 HEAD)指向具有.git/objects/36/6362as232d670123a2267b4879bbd01d142426不存在的哈希 366362as232d670123a2267b4879bbd01d142426(將存盤在檔案中)的物件。
在Git的歷史,你會用滑鼠右鍵單擊的最后一次提交,并選擇重置>軟(頭只)。如果提交丟失,您可以通過Git Reflog視圖恢復它們。
還要確保您的 Eclipse 和 EGit/JGit 是最新的(例如,有一個問題導致了四年多前已修復的Missing unknown error),并且您F5在 Eclipse 中執行了重繪 ( )命令列上的 Git 操作。
uj5u.com熱心網友回復:
如果從命令列推送成功,請先嘗試(這意味著您需要先安裝 Git):
- 檢查您是否被正確識別
ssh -Tv [email protected] - 檢查您的遠程源 URL:
git remote -v - 檢查您的本地狀態(
git status:以確保您在一個分支上,在這里我假設是主要的,并且您已經至少進行了一次提交) - 檢查您的初始推送:
git push -u origin main
還要檢查您是否宣告了任何子模塊(.gitmodules檔案),或查找任何嵌套的 Git 存盤庫(.git存盤庫根檔案夾旁邊的任何子檔案夾)
在調查 Egit/JGit 問題之前,排除(或不排除)git-core 問題是有幫助的。
而OP馬克西姆證實了評論:
最好先在命令列中嘗試一下。
fatal: bad object HEAD當我這樣做時,它會說“ ”git status。
我想我只為那個專案做了一個本地提交。
實際上,在分支中進行本地提交是推送任何內容的先決條件。
在您的情況下,請git branch -avv檢查是否有。
如果你已經推送了那個丟失的提交,假設你的主分支是main(不是master):
git fetch origin
git reset --soft origin/main
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/327187.html
