运行“git reset --hard HEAD”后,未提交的,未提交的更改将丢失。我可以配置git在运行此(可能是破坏性的)命令之前要求确认吗?
答案 0 :(得分:8)
把
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
来实现备份