github fork别人的项目到自己仓库并进行贡献

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

原文地址,转载请注明出处: https://blog.csdn.net/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是指将别人的仓库复制到自己的GitHub账号下,成为自己的仓库,以便对其进行修改和贡献。具体的fork步骤如下: 1. 打开你要fork仓库的页面。 2. 点击页面右上角的"Fork"按钮。这将会在你的GitHub账号下创建一个与原仓库相同的副本。 3. 等待fork完成后,你会被重定向到你的仓库页面。 4. 现在,你就可以对该仓库进行修改和编辑了。 引用中提到了具体的fork步骤。首先,在原仓库页面点击"fork"按钮,就会在你的GitHub账号下创建一个与原仓库相同的副本。然后,你可以在你的仓库进行修改和编辑工作。引用中提到,你可以在你的仓库页面上看到你fork项目,并可以看到它是从哪个仓库fork来的。你的仓库和原仓库的使用方法是一样的。引用中提到了第二种拉取代码的方式,即使用命令"git pull <远程仓库名> <分支名>"。这种方式可以将远程仓库的内容合并到你的本地仓库中。 所以,要在GitHub进行fork操作,可以按照以下步骤进行:在要fork仓库页面点击"Fork"按钮,然后等待fork完成,就可以在你的GitHub账号下创建一个与原仓库相同的副本,然后你可以在你的仓库进行修改和编辑。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [githubfork的使用](https://blog.csdn.net/diana_jiuri1314/article/details/121030330)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] - *3* [GithubGitlab使用fork](https://blog.csdn.net/wzp6010625/article/details/102776387)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值