可能是你的專案有設定保護機制,鎖住了。
參考:【狀況題】聽說 git push -f 這個指令很可怕,什麼情況可以使用它呢?
但我會建議不要用 force push,除非是那個部分一定一定得覆蓋掉,再使用。
我會建議就讓歷史保留在那,用 revert
的方式,恢復到你要的狀態,在最上面新增一個 commit 註記在此做了 revert。
參考:How can I revert multiple Git commits?
// EX.
// 假設你最新的 commit 是 xxxxxx7,最舊的是 xxxxxx1
// 你想移除 xxxxxx7 ~ xxxxxx2
$ git revert --no-commit xxxxxx1..
$ git commit -m "[REVERT] 移除 xxxxxx7 ~ xxxxxx2 的內容"