2013-03-02 144 views
2

我的遠程配置爲不接受非快速提交提交。git推送到遠程不接受

遠程版本與我的本地版本完全不同。我想重寫它。我不想合併或改變任何東西。而且,我的本地存儲庫是作爲一個乾淨的git init啓動的,而不是從服務器拉出來的。

我做git push origin master --f但我得到

remote: error: denying non-fast-forward refs/heads/master (you should pull first) 

我不想拔,因爲它會與我的版本合併,我不想。

什麼是正確的程序?

+0

可能'--f'是錯誤嗎? – sjas 2013-03-02 13:26:40

回答

2

這是git push -f origin mastergit push --force origin mastergit push --f將無法​​正常工作。

+1

值得重申的是,這將*破壞你強行覆蓋的任何分支的所有歷史*。這些變化將永遠消失。 – 2013-03-02 14:24:48

+0

謝謝,這是一個愚蠢的錯誤。 – Tony 2013-03-02 16:15:50

+0

其實,只有git覆蓋了分支引用**。對象本身不會立即刪除,並且仍然存在於對象數據庫('.git/objects')中。然而,一段時間後,一個git垃圾收集器最終會摧毀那些懸掛的對象。 – 2013-03-18 14:38:07

0

由於您正在使用相同的回購計劃,因此您需要首先進行回購。

你可以試着藏匿更改:

git stash 

,當我開始使用git我有這個錯誤很多次。我的解決方案是在另一個目錄中工作,然後從中拉出,確保它永不衝突