文章来源于Java面
在我看来,Github 的牛逼之处,你在狭小的空间里写的代码,全世界的码农都能看到,而且你也能跟仰慕已久的大神聊上几句,想想都感觉到很疯狂。因此,本文我将以漫画的形式来探秘 Github。
在这里,我先引用 Github CEO 的 Wanstrath 的一段话。
在我理想的世界里,协同工作将比独立工作简单的多。在那个世界中,软件开发会是一个充满欣喜的过程,我认为 GitHub 正在推进这一愿景的实现。
与其它版本控制服务器不同的是,Github 加入社交化、民主化的元素。因此,每个人采用派生/合并请求方式进行协同工作,并向开源项目贡献自己的代码,以时间流的形式展现自己的开发进度。还可以关注自己感兴趣的项目和大神,了解最新的开发动态,也可以进行讨论。
下图展示了两种基本的工作模式。
如果你在 Github 界面,按下 Shift+/ 的快捷键,将会出现如下图的弹出框。
1、在Github上编辑代码
如果你在Github网站上查看任意一个文件时,就会出现一个小铅笔图标,你点击它,便可以编辑该文件。等你编辑完成后,在页面上点击Propose File Change,GitHub 就会为你 fork 这个仓库,创建一个 pull request。为你省去了在本地 fork,pull,修改,push 以及创建一个 PR的流程,是不是很棒。
2、高效的分支比较
如果你想以最快的方式查看所处分支与master的差异,那么可以在 URL 中的仓库名字后面输入 //compare/branch-name。
有的读者也许想看任意两个分支之间的差异,那么可以在 URL 输入 /compare/integration-branch...my-branch。
3、链接到代码
如果你想链接到代码具体的某一行,可以试一下这个操作,点击该代码旁边的行数。
Github与谷歌一样,也有自己的搜索语法,这里为大家整理了一些常见的语法,想了解更详细的,可以去查看官方文档。
按编程语言搜索, xxx language:java
按文件或路径搜索,xxx in:readme
按文件大小搜索,xxx size:>100
按地域搜索, xxx location:chengdu
按是否fork过搜索,xxx fork:true
按照拥有者或者组织搜索,xxx user:yrzx404 或者 xxx org:github
按stars数量搜索,xxx stars:>1000
按主题搜索,xxx topic:java
如果你记不住这些语法,Github 同样为我们提供了高级搜索功能,见下图。
最后,如果你始终找不到一个心满意足的项目,那么可以尝试着用 Awesome+关键字 进行搜索,可能会有意想不到的结果。
Octotree:能在页面左侧提供一个面板,以树状图的形式呈现你正在查看的仓库。
Git History:这是我最近发现的一款插件,他能高效查看文件历史更改记录,超炫酷。
如基于你的兴趣而推荐的一些项目。
如基于每天/周/月最流行的一些项目。
还有很多,如主题、应用、事件等等。
试那些事儿 ,作者忆蓉之心