执行"git reset --hard"前提示确认



运行"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 来实现备份

最新更新