原文地址,转载请注明出处: https://blog.youkuaiyun.com/qq_34021712/article/details/117260462 ©王赛超
目录
作为开发人员,github肯定不少用,上面有很多别人写好的小项目或者知名的开源项目等,本篇重点介绍Github上如何给别人贡献代码,了解一下大概的流程。废话不多说了,开始。
这里创建2个账号,一个是主账号(Clever-Wang),主账号上包含代码仓库 git-demo, 一个是将要贡献代码的帐号 Helloworld-7558 。
第一步: 主账号上创建一个新的仓库 git-demo。
1.在主账号点击New创建一个新的仓库。
2.仓库创建信息如下:
3.仓库创建好之后如下:
第二步: 贡献账号 Helloworld-7558 Fork项目
1.搜索"Clever-Wang/git-demo"代码仓库
2.进入git-demo仓库,点击右边的fork 将git-demo项目的副本作为你自已的项目。
3.fork之后的图如下图所示,git-demo已经处于自已的github帐号库中,同时也可以发现github还使用 forked from 标明了该库的来源。
代码fork到自己仓库之后,可以选择在线修改,在线修改一般适合修改量较少,或者采用Git工具,将代码仓库下载到本地,然后使用idea等工具打开本地文件,修改之后再上传上去。
下面直接使用git命令操作,方便一点,真实的情况肯定是使用idea修改代码测试的。
第三步: 将远程fork的项目下载到本地电脑。
# 在桌面创建test目录
mkdir /Users/wangsaichao/Desktop/test
# 切换到test目录
cd /Users/wangsaichao/Desktop/test
# 创建并初始化git库
git init
# 链接到远程git仓库 -t main 使用 main 分支
git remote add origin -t main https://github.com/Helloworld-7558/git-demo.git
# 将远程git库下载到本地
git pull origin main
第四步: 修改README.md文件 并上传到远程fork仓库。
命令执行完后,可以看看从Helloworld-7558/git-demo.git下载下来的文件,如下图所示

现在我们修改了README.md文件,在这个文件里面增加了文本 "我是Helloworld-7558 这是我frok别人的项目, 进行的贡献。",接下来要做的就是将修改后的代码库上传上去,命令如下:
# 将目录下所有文件都增加到本地库中。
git add .
# 提交更改到本地仓库
git commit -am '提交注释'
# 将本地的master分支改为main分支, github为避免联想奴隶制。在持续的外界影响之下,默认分支由master改为main。
# 但是git工具默认init还是创建的master分支 所以要改成main分支。
git branch -M main
# 将本地修改推到github上
git push -u origin main
push上传完后,再回到github网站上,可以看到README.md文件内容已更改。

第五步: 将修改提交给主帐号的原作者,原作者决定是否合并你的修改
点击pull request后,跳转到下一个页面,在下一个页面上点击New pull request, 如下图:
然后点击 New pull request

点击New pull request之后的界面上显示了修改后的文件与原作者库里的文件有哪些地方不同

然后点击Create pull request 即可跳转到最后一个页面,在最后一个页面上写上自已的提交注释,点击Create pull request即可。

主帐号原作者即可收到你的提交请求,如果觉的你写的代码没问题,就会将你的请求同主干合并。

第六步: 主账号(原作者Clever-Wang)合并该PR
在主账号上可以看到 Helloworld-7558 用户提交的PR

下面进行合并操作, 点击要合并的PR进入到下一个页面,拖到最下面,可以看到该分支与基础分支没有冲突,合并可以自动执行。可以点击链接:command line instructions 查看命令行指令,就是自动帮你执行指令而已。

有冲突的话 就需要解决冲突了,这里没有冲突 直接点击 Merge pull request 进行自动合并。

然后确认合并。

合并完成之后,会显示该PR已经Merged

点击Code查看 已经是合并后的代码了。

本文详细介绍了在GitHub上为他人项目贡献代码的完整步骤,包括创建仓库、Fork项目、下载到本地、修改文件、提交Pull Request及主账号合并请求。通过实例演示了Git命令行操作,适合开发者参考。
2471

被折叠的 条评论
为什么被折叠?



