如何参与Github开源社区开发
如何在Github上面参与到开源社区开发,记录了如何精确搜索项目,以及参与一个开源项目的实际流程
如何参与Github开源社区开发
最近对Github开源社区感兴趣,想学习如何在Github上面参与到开源社区开发。
Github项目精确搜索
关于如何在github社区查询到自己想要的开源项目,根据codesheep的视频总结了以下几个精确搜索的条件。
接着在b站上面找了个Aftership大佬的如何参与开源项目视频链接。因为之前使用Git经历少。在看视频中也遇到了些关于git的指令的笔记,故记录参与开源社区需要的Git指令的流程,以及对应Git指令的功能。
Git相关总结博客
Git是分布式版本控制系统。
Git 有四个工作区域:工作区域(Working Directory)、暂存区(Stage\Index)、本地仓库(Repository)、远程仓库(Remote Directory)
- workspace:工作区,就是平时存放项目代码的地方。
- Index/Stage:暂存区,用于临时存放你的改动,事实上只是一个文件,保存即将提交到文件列表信息。
- Repository:仓库区(或版本库),就是安全存放数据的位置,这里面有你提交到所有版本的数据。其中HEAD指向最新放入仓库的版本。
- Remote:远程仓库,托管代码的服务器,可以简单的认为是你项目组中一台电脑用于远程数据交换。
参与开源社区及git指令流程
1. 在github上面fork一个来解决issue
github上面每个项目都有一个fork按钮。fork含义是分支。点击fork按钮,可以复制一份项目到你的仓库列表当中。
所以,github的fork是复制、打分支仓库的意思。
例如要Fork一个人的代码仓库,fork操作会复制一份目标仓库(包括文件,提交历史,issues,和其余一些东西),复制后的仓库在你自己的GitHub帐号下,这个操作是在github服务器上完成的,和本地计算机的仓库没有关系。
2. 把remote设为我们刚刚新fork的地址
上面指令的upstream意思是后面的这个远程地址取名为upstream,在后面push upstream就是传到对应地址上面。
3. 创建一个新的分支并且切换到他
$ git co -b <new_branch> # 创建新的分支,并且切换过去
或者
$ git checkout -b dev # Switched to a new branch 'dev'
4. 提交修改步骤
git diff:
git diff 命令可以对比两个版本的差异,具体来说包括:
- 本地工作区和暂存区的diff信息:git diff 或者 git diff file
- 暂存区和版本库的diff信息(使用git add将工作区修改保存到了暂存区后):git diff --cached
- 版本库中不同commit、分支的diff信息(使用git commit 将暂存区修改提交到了版本库):git diff commit1 commit2 或 git diff branch1 branch2
我们都知道,正常情况下只有我们用commit命令提交到了版本库,才可以使用git diff branch1 branch2 命令来查看分支间的diff信息。
有的时候我们在工作区开发完(可以保存到暂存区),不想提交到当前分支的版本库中,想查看一下其他分支和我当前改动的diff信息,然后再确定是否要提交到版本库中,该如何做呢?可以使用如下命令:查看当前目录和另外一个分支的差别(当前目录未提交到版本库)
git diff branch
git push
git push 命令用于从将本地的分支版本上传到远程并合并。
命令格式如下:
git push <远程主机名> <本地分支名>:<远程分支名> 如果本地分支名与远程分支名相同,则可以省略冒号:
git push <远程主机名> <本地分支名>
5. 提交Pull Request
点击上面这个红框的链接,可以直接到定位好上游项目的PR申请界面,接着提交即可
记住在解决开源项目之前先要在issue中查找是否已经有我们想改的问题确认不需要修改的讨论。通过filter选择还开着的issue。可以先提个对应问题的issue再改代码
参考:
b视频链接:https://www.bilibili.com/video/BV1QY4y1A74H/?spm_id_from=333.337.search-card.all.click&vd_source=001649b7245cf485d6e377016b2433b2
版权声明:本文为CSDN博主「赶路人儿」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/liuxiao723846/article/details/109689069Git
版权声明:本文为CSDN博主「xyzso1z」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/xyzso1z/article/details/119009639
更多推荐
所有评论(0)