我在一個叫獅子分會的工作,我錯誤地做到了這一點:還原遠程合併
git push origin lion:master
,而不是
git push eng lion:master
基本上第二行是爲推動獅子分支到分段Heroku的應用程序,但我錯誤地將我所有的代碼合併到原始大師。
我該如何回覆?我在我的分支中有大約200次提交。
格雷格
我在一個叫獅子分會的工作,我錯誤地做到了這一點:還原遠程合併
git push origin lion:master
,而不是
git push eng lion:master
基本上第二行是爲推動獅子分支到分段Heroku的應用程序,但我錯誤地將我所有的代碼合併到原始大師。
我該如何回覆?我在我的分支中有大約200次提交。
格雷格
命令'git reset'採用可選的提交參數。所以,如果你有機會到原始版本庫,你可以嘗試:
git reset [--soft | --mixed] <last-good-commit> # in the remote/origin repository
如果您沒有訪問到存儲庫,你應該能夠做到:
git checkout -b rework <last-good-commit>
git push origin rework:master # The push merge will produce a commit that works back to <last-good-commit>
我得到「![拒絕]返工 - >主人(非快進) 錯誤:未能推送一些文件到'[email protected]:....' 爲了防止你失去歷史,快進更新被拒絕.... – 2012-08-09 20:48:13
假設沒有其他人已經走了,並得到了新的變化:
1)如果你有到origin
庫直接訪問,您可以在origin
相關分支機構做git reset --hard <commit ID>
。
2)或者,你可以做一個git push -f
與舊的提交ID也許。
僅重置最後一次提交。我有200 ... – Gregory 2012-04-08 17:31:25
它不,如果你做'git reset --hard
看看你是否發現任何有用的在[這](http://stackoverflow.com/questions/179123/how-do-i-edit-an-incorrect-commit-message-in-git),所有時間最流行的SO問題之一(在至少到現在爲止) – DOK 2012-04-08 18:16:40