2011-11-25 132 views
29

我是git和heroku的新手。替換遠程git倉庫(Heroku)

我在heroku上創建了一個應用程序,將一些文件推送到回購站。

現在我想用另一個文件夾中的新內容完全替換此應用程序的回購(並在該文件夾中有一個.git回購)。什麼是正確的方法來做到這一點?

回答

46

如果你想完全取代您已經通過新的第二回購的歷史推提交的歷史,你應該需要做的是:

git remote show heroku in the first repo 
cd /path/to/seconf/git/repo 
git remote add heroku <heroku_repo_address_from_previous_command> 
# for instance: git remote add heroku [email protected]:appname.git 
git push --force heroku master 

將取代的master分支由您的第二個回購的master分支的遠程heroku回購。但是,這將放棄(或至少保留在遠程回購一段時間reflogs)前回購的master分支的歷史。

這假定您可以重複使用已創建的您的heroku憑據,跟在Heroku quick start pageHeroku Deploying with git page之後。

+0

謝謝。是--force選項可以讓100%的受助者新的主分支不會與服務器上的舊分支合併,而只是替換它?從文檔它不明顯(「此標誌[-f, - force]禁用檢查。這可能會導致遠程存儲庫丟失提交;小心使用它。」) – WHITECOLOR

+0

@WHITECOLOR:是的,不會有任何合併。 – VonC

+17

只需要使用「部隊」 – doublejosh