运行"git reset --hard HEAD"后,未暂存、未提交的更改将丢失。我可以将 git 配置为在运行此(可能具有破坏性的)命令之前要求确认吗?
put
git() {
if [ "$1" = "rebase" ] && [ "$2" = "--hard" ] && [ "$3" = "HEAD" ] ; then
echo "are you being a moron again?"
read i
if [ "$i" = "no" ]; then
command git $@
fi
fi
}
在您的${HOME}/.profile
更新:虽然这是解决问题的一种方法,但当我对即将执行的历史记录重写操作不完全有信心时,我更喜欢进行分支备份。我通过强制清除到远程上的 WIP 分支或使用 git-branch-backup 来实现备份