簡體   English   中英

git:致命:錯誤的默認修訂版“HEAD”包含所有新的回購

[英]git: fatal: bad default revision 'HEAD' with all new repos

問題是大量的shell定制。

如果我嘗試使用git init創建一個新的repo,它會讓我fatal: bad default revision 'HEAD'兩次fatal: bad default revision 'HEAD'

如果我做git log它會給我三次相同的錯誤。

我已經根據我發現的其他答案刪除了~/.git~/.config~/.gitconfig ,說明我可能在我的主目錄中創建了repo。 唯一沒有給我這個問題的回購是我從別人那里克隆出來的回購。

我不確定我做了什么,除了刪除我的主目錄中的任何內容與git信息。

按要求:

jsw:~ jsw$ mkdir test
jsw:~ jsw$ cd test
jsw:test jsw$ git init
Initialized empty Git repository in /Users/jsw/test/.git/
fatal: bad default revision 'HEAD'
fatal: bad default revision 'HEAD'
jsw:test(master|23448707m) jsw$ cat .git/HEAD
ref: refs/heads/master
fatal: bad default revision 'HEAD'
fatal: bad default revision 'HEAD'


jsw:~ jsw$ git status
fatal: Not a git repository (or any of the parent directories): .git

您可能會收到此錯誤,因為您沒有對HEAD修訂版進行任何提交,因此當您創建git log ,它將無法在HEAD上找到任何提交。

請試試:

mkdir test
cd test
git init
git commit -m 'Initial Commit' --allow-empty
git log

你運行了cat .git/HEAD ,它回答說:

ref: refs/heads/master
fatal: bad default revision 'HEAD'
fatal: bad default revision 'HEAD'

由於cat不是git命令而且不關心你的HEAD ,我懷疑你已經配置了你的shell來做一些事情,比如打印當前分支的名字。

實際上,查看shell提示符:

jsw:test(master|23448707m) jsw$

我很確定。

要么關閉你想要執行的任何shell魔法,修復它以便它知道如何處理新的存儲庫,或者只是處理錯誤消息,直到你第一次提交為止。

請使用以下命令

git init git commit -m'initial commit' - 允許空的git log

然后你運行reflog,你會看到ref#

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM