【发布时间】:2021-05-05 10:46:22
【问题描述】:
我设法将一些带有糟糕提交消息的更改推送到我的主分支。 这是我的 git 命令序列:
git branch -b myperfectfeature
(i wrote excellent code)
git add .
git commit -m "Add awesom stuff"
git checkout main
git merge --ff-only myperfectfeature
git push origin main
然后我意识到我在提交消息中拼写错误。 我尝试使用以下方法改写提交消息:
git commit --amend
但是当我现在尝试推动时:
git push origin main -f
我收到以下错误:
! [remote denied] main -> main (pre-receive hook denied) 错误:未能将一些引用推送到 '.../myrepo.git'
我猜我的 GitLab 存储库不允许非快进推送 (?)。
有什么方法可以改写我在主分支上的最后一条提交消息并保留我的更改?
【问题讨论】:
-
分支可能被保护了,不能直接推送。
-
你没有收到来自 gitlab 的消息说分支受到保护吗?
-
是的,分支似乎被标记为“受保护”。如果没有办法恢复我的更改,我猜我只能忍受它,并且在未来更加小心。