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

pix*_*iry 6 git fork clone github heroku

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

我在github上分叉代码,但现在我不确定接下来要做什么.我不想进行更改,然后意外地承诺我克隆的repo.

tbe*_*lay 10

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

您将原点分叉到Github上的新存储库; 让我们说旧的那个是https://github.com/bob/website.git你的叉子https://github.com/pixelfairy/website.git.

如果你这样做

git remote -v
Run Code Online (Sandbox Code Playgroud)

你应该看到类似的东西

origin  https://github.com/bob/website.git (fetch)
origin  https://github.com/bob/website.git (push)
...
Run Code Online (Sandbox Code Playgroud)

我们可以改变这一点,以便origin指向你的分叉.做

git remote set-url origin https://github.com/pixelfairy/website.git
Run Code Online (Sandbox Code Playgroud)

现在git remote -v应该输出

origin  https://github.com/pixelfairy/website.git (fetch)
origin  https://github.com/pixelfairy/website.git (push)
...
Run Code Online (Sandbox Code Playgroud)

现在,您可以pushpull像之前,它会使用你的叉子,而不是原先克隆库的.


G-M*_*Man 5

只是添加到 @tbekolay 答案,如果需要,您仍然可以从克隆的原始分支中获取/拉取,以便跟上那里的更改。通过添加仍然指向原始遥控器(在本例中为 bob )的“上游”(或其他命名)遥控器来完成此操作。

git remote add upstream https://github.com/bob/website.git
Run Code Online (Sandbox Code Playgroud)

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

git pull upstream <branch name>
Run Code Online (Sandbox Code Playgroud)

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

git remote set-url upstream <new url>
Run Code Online (Sandbox Code Playgroud)