GitHub報錯error: bad signature


Git報錯 bad signature

將文件提交到倉庫時,拋出以下錯誤:

報錯

Roc@DESKTOP-AF552U2 MINGW64 /e/note/Git (master)
$ git add git連接GitHub以及推送至倉庫.md
error: bad signature
fatal: index file corrupt

原因分析

由於index file在 git 里面一般指的是 .git/index 這個文件。這個文件保存的是暫存區的信息(索引信息)。可以通過 git ls-files --stage 來查看暫存區的內容。這個文件很重要!但是現在報 index file corrupt,說明這個文件已經損壞了。還好,我們有辦法重新來生成這個文件:git read-tree 或者直接 git reset.

解決辦法

  1. 進入到工程目錄下: cd /path/to/dir
  2. 刪除或重命名 .git/index 文件: rm -f .git/index 或 mv .git/index{,.bak}
  3. 重建 .git/index : git read-tree 或者直接 git reset
Roc@DESKTOP-AF552U2 MINGW64 /e/note (master)
$ mv .git/index .git/index.bak

Roc@DESKTOP-AF552U2 MINGW64 /e/note (master)
$ git reset
Unstaged changes after reset:
M       Git/git的初次使用.md
M       Git/git的選項參數.md

Roc@DESKTOP-AF552U2 MINGW64 /e/note (master)
$ git status
On branch master
Your branch is ahead of 'origin/master' by 1 commit.
  (use "git push" to publish your local commits)

Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git checkout -- <file>..." to discard changes in working directory)

        modified:   "Git/git\347\232\204\345\210\235\346\254\241\344\275\277\347\224\250.md"
        modified:   "Git/git\347\232\204\351\200\211\351\241\271\345\217\202\346\225\260.md"

Untracked files:
  (use "git add <file>..." to include in what will be committed)

        Git/git failed to push some refs to github.md
        "Git/git \346\212\245\351\224\231 index file corrupt.md"
        "Git/git\350\277\236\346\216\245GitHub\344\273\245\345\217\212\346\216\250\351\200\201\350\207\263\344\273\223\345\272\223.md"

no changes added to commit (use "git add" and/or "git commit -a")

Roc@DESKTOP-AF552U2 MINGW64 /e/note (master)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM