如何将git clone转换为fork然后从fork推送到heroku?

时间:2014-07-17 18:06:23

标签: git heroku github fork clone

我克隆了一个存储库,认为我不需要改变任何东西。现在我想改变一些事情。

我在github上分叉代码,但现在我不确定下一步该做什么。我不想做出更改然后意外地承诺我克隆的回购。

2 个答案:

答案 0 :(得分:10)

您的本地git存储库根据“遥控器”确定推/拉的位置。现在,您的本地存储库有两个远程数据库origin(现在指向您克隆的Github存储库)和heroku(指向Heroku存储库)。

您将原点分叉到Github上的新存储库;假设旧的是https://github.com/bob/website.git而你的前叉是https://github.com/pixelfairy/website.git

如果你这样做

git remote -v

您应该看到类似

的内容
origin  https://github.com/bob/website.git (fetch)
origin  https://github.com/bob/website.git (push)
...

我们可以对此进行更改,以便origin指向您的分叉。做

git remote set-url origin https://github.com/pixelfairy/website.git

现在git remote -v应输出

origin  https://github.com/pixelfairy/website.git (fetch)
origin  https://github.com/pixelfairy/website.git (push)
...

您现在可以像以前一样pushpull,它将使用您的fork而不是最初克隆的存储库。

答案 1 :(得分:3)

只需要添加@tbekolay答案,如果需要,你仍然可以从克隆的原始分支中获取/拉取,以便跟上那里的变化。通过添加仍然指向原始遥控器的“上游”(或其他命名的)遥控器(在这种情况下为bob)来执行此操作。

git remote add upstream https://github.com/bob/website.git

然后您可以不时地从那里拉取代码来更新代码:

git pull upstream <branch name>

如果您想更改新的远程使用:

git remote set-url upstream <new url>