替换远程git仓库(Heroku)

34

我对Git和Heroku比较陌生。

我在Heroku上创建了一个应用程序,并将一些文件推送到代码库中。

现在,我希望通过另一个文件夹中的新内容完全替换此应用程序的代码库(并且该文件夹中有一个.git仓库)。请问正确的操作方式是什么?

1个回答

49

如果你想完全用第二个新仓库的历史记录替换已经推送过的提交历史记录,你只需要执行以下操作:

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 git@heroku.com:appname.git
git push --force heroku master

这将用第二个仓库的master分支替换远程heroku仓库的master分支。但这会丢失(或者至少保留在远程仓库的引用日志中一段时间)先前仓库master分支的历史记录。

假设您可以重用已经创建的Heroku凭据,遵循Heroku快速入门页面使用git部署到Heroku页面


谢谢。--force选项是否可以百分之百保证新的主分支不会与服务器上的旧分支合并,而只是替换它?从文档中看不出来(“此标志[-f,-force]禁用检查。这可能导致远程存储库丢失提交;请小心使用。”)。 - WHITECOLOR
@WHITECOLOR:是的,不会有任何合并。 - VonC
17
只需要使用“原力”。 - doublejosh

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接