假设someone/foobar
我在GitHub上有一个存储库me/foobar
。
如何将新的提交从父存储库直接拉到我的fork,而不必添加单独的远程服务器 并记得定期从那里拉出?
目标是:
git pull
从父存储库中获取git push
把一切都寄给我
假设someone/foobar
我在GitHub上有一个存储库me/foobar
。
如何将新的提交从父存储库直接拉到我的fork,而不必添加单独的远程服务器 并记得定期从那里拉出?
目标是:
git pull
从父存储库中获取git push
把一切都寄给我Answers:
打开分支的Git存储库me / foobar。
点击比较:
您将收到通知:
没有什么可比较的。
someone:master是最新的,其中包含me:master的所有提交。尝试切换基准进行比较。
单击此页面上的切换基准:
然后,您可以查看在分叉某天之后对某人/ foobar所做的所有提交。
单击创建请求请求:
为拉取请求提供一个标题,可能还提供一个描述,然后单击“ 创建拉取请求”。
在下一页上,滚动到页面底部,然后点击合并拉取请求和确认合并。
您的Git存储库me / foobar将被更新。
编辑:变基选项显示在这里:
Edit
按钮,手动切换base fork
到me/foobar
和head fork
到someone/foobar
。这样就很清楚了
我使用了一个非常简单的方法,使用GitHub Web UI来做到这一点:
me/foobar
)的“拉”的应用程序是自动设置和忘记的解决方案。它将把fork的默认分支与上游存储库同步。
访问URL,单击绿色的“安装”按钮,然后选择要启用自动同步的存储库。
该分支每小时直接在GitHub上更新一次,在本地计算机上,您需要拉主分支以确保本地副本同步。
我不知道如何在不添加另一个遥控器的情况下完成此操作,但是我总是将我从中分叉的存储库添加为upstream
遥控器,因此我可以简单地执行以下操作:
git branch -a|grep remotes/upstream| while IFS="/" read p r b; do echo Syncing $r/$b to origin/$b; git push origin $r/$b:refs/heads/$b; done
这将同步所有分支,包括。创建新refs/heads/
分支(删除则仅更新现有分支)。如果您的分支中有任何分支偏离,将对该分支引发错误。