github fork后的pull和保持同步

简介:



前言

对github上的某个项目贡献自己的修改,但自己可能并没有那个仓库的权限,那要如何操作呢?git的机制和svn还是有些区别的,本文做些记录。

思路1

clone项目到本地,有修改之后,直接提交到原作者仓库

思路2

forck项目到自己的仓库,然后进行修改,并把修改的内容推送到原作者仓库。

尝试过第一种思路会报权限不足,本篇记录第二种思路

本文示例

原作者仓库地址:https://github.com/mr-kelly/KSFramework

自己Fork后的地址:https://github.com/zhaoqingqing/KSFramework/

 

操作环境

拉取方式:使用https而非ssh

windows 7 x64

TortoiseGit 2.2.0.0

git version 2.10.0.windows

 

Fork并Pull给原作者

当自己修复原作者的一些bug之后,希望把这个修改push给原作者。

git重新定位到自己仓库

当使用git clone 远端的项目到本地之后,要如何把这个地址指向自己的仓库呢?又为什么要指向自己仓库呢?

1、指向自己的仓库,自己拥有提交和push权限

2、可以不用重新git clone一份资源下来啦。

 

通过修改远端,类似于SVN的重新定位,就是修改远端的地址。

我把远端的地址换成是我github地址,并点击确定。

image

pull request给原作者

1、当把远端地址改成自己的仓库地址之后,就有权限提交了,可以和平时一样进行commit和push

2、推送到自己的远端之后,如果你想把这个修改 pull 给原作者,在网页版可以看到一个 New pull request 的按钮,点击它

image

 

3、点击之后,会出现你要推送的修改,查看无误之后,可以点击 “ Create pull request ”

image

 

4、接下来在原作者的仓库的 pull request,就会出现你pull的修改,等待原作者通过之后,你的代码就被合并了。

image

保证fork仓库的同步

上述方法是fork原作者的仓库,而当原作者的代码有更新,我们要如何把作者同步到自己的仓库呢?

添加原作者地址

image

此步骤用于更新原作者的修改,保证库中的部分代码和原作者一样。

 

同步原作者的修改到自己仓库

1、使用git pull(拉取)原作者的新修改之后,打开TortoiseGit的同步窗口

2、选择 远端分支,在“将推送的提交”选择要推送的分支

3、点击推送,会自动添加此次的注释,一般都是“Merge xxx”

4、做完以上三步,你就把原作者的修改内容同步到自己的仓库了

image

 

更多

直接提交到原作者仓库遇到的问题

如果你在clone之后直接提交到原作者仓库时,报权限不足,那么建议使用fork 后 push的方式,即本文所使用的方式

复制代码
git.exe push -v --progress "origin" master:master

remote: Permission to mr-kelly/KSFramework.git denied to zhaoqingqing.
fatal: unable to access 'https://mr-kelly@github.com/mr-kelly/KSFramework.git/': The requested URL returned error: 403
Pushing to https://mr-kelly@github.com/mr-kelly/KSFramework.git
复制代码

 

参考资料:http://blog.csdn.net/huutu/article/details/51831647


本文转自赵青青博客园博客,原文链接:http://www.cnblogs.com/zhaoqingqing/p/5959831.html,如需转载请自行联系原作者

相关文章
|
2月前
|
缓存 网络协议 Linux
百度搜索:蓝易云【解决github push/pull报错443】
通过以上方法,你有望解决GitHub push/pull报错443的问题。如果问题仍然存在,建议检查GitHub的状态页面,看是否有正在维护或故障的情况。
81 3
|
5月前
github fork别人项目后如何同步更新原项目
github fork别人项目后如何同步更新原项目
|
30天前
|
数据采集 人工智能 Rust
『GitHub项目圈选周刊01』一款构建AI数字人项目开源了!自动实现音视频同步!
『GitHub项目圈选周刊01』一款构建AI数字人项目开源了!自动实现音视频同步!
148 0
|
7月前
|
开发工具 C++ git
vs 2022与GitHub同步
vs 2022与GitHub同步
93 0
|
3月前
|
JavaScript Ubuntu 网络安全
使用github actions,将私有仓库的构建文件发布到另一个公开仓库,并同步到gitee
使用github actions,将私有仓库的构建文件发布到另一个公开仓库,并同步到gitee
85 0
|
3月前
|
语音技术
如何在GitHub正确提PR(Pull Requests),给喜欢的开源项目贡献代码
最好的中文TTS项目Bert-vits2更新了中文特化分支,但可能由于时间仓促,代码中存在不少的bug,作为普通用户,有的时候也想为自己喜欢的开源项目做一点点贡献,帮助作者修改一些简单的bug,那么该如何开始? 本次我们以Bert-vits2项目为例子,分享正确提交PR(Pull Requests)的方式。
|
4月前
|
安全 开发工具 数据安全/隐私保护
Git GitHub同步失败
Git GitHub同步失败
37 0
|
10月前
|
开发工具 git
Github Fork项目后如何与源主机代码保持更新同步
Github Fork项目后如何与源主机代码保持更新同步
687 0
|
10月前
|
安全 网络安全 开发工具
【版本控制】Github同步Gitee镜像仓库自动化脚本
【版本控制】Github同步Gitee镜像仓库自动化脚本
508 0
|
27天前
|
人工智能 文字识别 异构计算
关于github开源ocr项目的疑问
小白尝试Python OCR学习,遇到报错。尝试Paddle OCR部署失败,Tesseract OCR在Colab误操作后恢复失败。EasyOCR在Colab和阿里天池Notebook成功,但GPU资源不足。其他平台部署不顺,决定使用WebUI或阿里云轻应用。求教OCR项目部署到本地及简单OCR项目推荐。
26 1