这可能看起来像一个奇怪的事情......或者我可能不确定我想要实现的正确的热点是什么.. 但基本上我想要做的是复制或分叉项目,然后添加我自己的"层"我克隆/分叉的东西,但我仍然希望能够从克隆/分叉项目中下载最新的更改..
所以让我们举个例子说我在github上找到了一个很棒的项目,那就是开源等等。然后我克隆它并开始在我自己的克隆中扩展该项目,但几周后我克隆的项目发布了一些新的更新..然后我想简单地将更改下拉到我的克隆项目..
这有可能吗? 我知道一种方法是手动添加更改,但这看起来效率不高。
BR, INX
答案 0 :(得分:2)
你可以为你的git repo安装两个遥控器。以下是使用流行的GitHub存储库的示例。
> git clone https://github.com/twbs/bootstrap
> git remote add mine git@github.com:bigfont/my-bootstrap.git
> git remote -v
mine git@github.com:bigfont/my-bootstrap.git (fetch)
mine git@github.com:bigfont/my-bootstrap.git (push)
origin https://github.com/twbs/bootstrap (fetch)
origin https://github.com/twbs/bootstrap (push)
> git pull origin master
> git pull mine master
> git push mine master
此处的语法为git push <remote> <branch>
。
您还可以通过运行git branch --set-upstream-to mine/master
来更改默认的推/拉位置。这样,您可以为您的遥控器运行git push
或git pull
,并在从原始遥控器拉出时使用更长的语法。
答案 1 :(得分:1)
是的,有可能。保留原始遥控器并不时获取更改
git fetch <the remote name I gave to the original open-source project>
当有更新时,您可能希望在上游更改之上进行rebase或合并您的分支。
如果您要更改与上游更改的文件相同的文件,它将很快变得混乱。