我打开了一个终端窗口,Oh My Zsh 想要检查更新。我输入了Y
“是”,然后收到错误消息:
无法使用 rebase 进行拉取:您有未暂存的更改。
请提交或存储它们。
我尝试了一下git status
,Git 告诉我当前目录不是存储库(这并不让我感到惊讶)。
那么,它在抱怨什么呢?
答案1
您可能对配置文件进行了更改。转到您的oh-my-zsh
目录并输入git status
。
我的结果(我改变了其中一个主题):
╭─ jane ~
╰─ λ cd .oh-my-zsh 1:57:10
╭─ jane ~/.oh-my-zsh ‹master*›
╰─ λ git status 1:57:17
On branch master
Your branch is up-to-date with 'origin/master'.
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: themes/bira.zsh-theme
no changes added to commit (use "git add" and/or "git commit -a")
您将看到一些文件已被修改。
您可以输入git stash
以暂时摆脱这些更改,然后尝试再次更新。
答案2
以下是我修复此问题需要做的事情:
cd ~/.oh-my-zsh/
git add .
git commit -m "commit message"
upgrade_oh_my_zsh
不要忘记第二行末尾的“。”
答案3
单线解决方案
cd "$ZSH" && git stash && upgrade_oh_my_zsh && git stash pop
cd "$ZSH"
更改当前 ZSH 目录。git stash
暂存您的本地更改并通过 git 返回到 master。upgrade_oh_my_zsh
升级 ohMyZshgit stash pop
保留更改,可能是您的主题。
答案4
如果您愿意放弃任何本地更改,请运行:
git checkout -f master
git pull
这可确保您保持最新状态并清除本地机器上的任何混乱。