关于 Git 和 Github 你不知道的十件事

Git 和 GitHub都是非常强大的工具。即使你已经使用他们很长时间,你也很有可能不知道每个细节。我整理了Git和GitHub可能提高日常效率的10个常用技巧。

GitHub

快捷键: t 和 w

在你的源码浏览页面,按t可以快速进入模糊文件名搜索模式:

在你仓库主页,按w可以快速进行分支过滤:

在任意GitHub页面中,按?展示当前页面可用的快捷键:

忽略空格: ?w=1

在任意的diff URL添加?w=1用来整理缩进:

按范围过滤提交记录: master@{time}..master

你可以创建一个对比页面通过使用URL github.com/user/repo/compare/{range}。范围(range)可以是两个SHA例如sha1…sha2或者两个分支名称例如master…my-branch。范围同时也非常智能的支持使用时间作为关注点。你可以通过master@{1.day.ago}…master过滤从昨天开始的提交。例如:链接,https://github.com/rails/rails/compare/master@{1.day.ago}…master显示Rails项目中全部昨天开始的提交记录和变化:

按作者过滤提交记录: ?author=github_handle

你可以通过在对比页面URL中增加?author=github_handle来按作者过滤提交记录。例如:链接https://github.com/dynjs/dynjs/commits/master?author=jingweno显示jingweno对Dynjs 的提交记录:

.diff 和 .patch

在比较页面、合并请求页面或者评论页面的URL后增加.diff或者.patch,可以得到diff或者patch的文本格式。例如:链接https://github.com/rails/rails/compare/master@{1.day.ago}…master.patch显示Rails项目中全部昨天开始的提交记录和变化的文本格式:

邮件回复

你可以直接在收到的GitHub通知邮件进行评论,不必在网站页面中评论。GitHub会正确的处理你的评论:

链接行

在文件展示页面,点击某行或者通过按SHIFT选择多行,URL会有相应的改变。如果你要给你的队友分享一段代码是非常方便的:

关注用户

在合并请求、问题或者任何评论中中提到用户会使用户关注全部的后续通知:

自动链接

在合并请求、问题、或者任何评论中,sha和问题码(例如:#1)会被自动链接。并且,你也可以链接其它仓库的sha或者问题码,格式:user/repo@sha1或者user/repo#1。下面是一个评论中通过sha自动链接的例子:

hub

Hub 是 GitHub的命令行。它提供了Git和Github之间的集成。一个最有用的命令就是在命令行输入hub pull-request创建pull request。详见readme.

Git

git log -p FILE

查看README.md的修改历史,例如:

> git log -p README.md

git log -S’PATTERN’

例如,搜索修改符合stupid的历史:

> git log -S'stupid'

git add -p

交互式的保存和取消保存变化,使用:

> git add -p

git rm –cached FILE

这个命令只删除远程文件,例如:

> git rm --cached database.yml

删除database.yml被保存的记录,但是不影响本地文件。这对删除已经推送过的忽略文件记录而且不影响本地文件是非常的方便的。

git log ..BRANCH

这个命令返回某个非HEAD分支的提交记录。假如你在一个功能分支,输入:

> git log ..master

返回全部master分支的历史记录,包括未被合并到当前分支的提交记录。

git branch –merged & git branch –no-merged

这个命令返回已合并分支列表或未合并的分支列表。这个命令对合并前检查非常有用。例如,在一个功能分支,输入

> git branch --no-merged

返回未合并到该分支的分支列表。

git branch –contains SHA

返回包含某个指定sha的分支列表。例如:

> git branch --contains 2f8e2b

显示全部包含提交2f832b的分支。这个命令对于验证git cherry-pick完成非常有帮助。

git status -s

返回一个简单版的git status。我设置这个命令为默认git status来减少噪音。

git reflog

显示你在本地已完成的操作列表。

git shortlog -sn

显示提交记录的参与者列表。和GitHub的参与者列表相同。

Summary

Git是一个设计良好的工具。了解它可以直接让你更有效率并成为一个更有才华的程序员。GitHub,在另一个方面,在Git基础上提供便利的团队合作特性。有能力使用GitHub也会提高你日常效率。

为了更好的加深你对的Git和Github了解,我推荐一些资料:

来源:51CTO

时间: 2024-08-17 20:55:13

关于 Git 和 Github 你不知道的十件事的相关文章

关于Git和Github你不知道的十件事

Git 和 GitHub都是非常强大的工具.即使你已经使用他们很长时间,你也很有可能不知道每个细节.我整理了Git和GitHub可能提高日常效率的10个常用技巧. GitHub 快捷键: t 和 w   在你的源码浏览页面,按t可以快速进入模糊文件名搜索模式: 在你仓库主页,按w可以快速进行分支过滤: 在任意GitHub页面中,按?展示当前页面可用的快捷键: 忽略空格: ?w=1   在任意的diff URL添加?w=1用来整理缩进: 按范围过滤提交记录: master@{time}..mast

关于Java你不知道的十件事

作为 Java 书呆子,比起实用技能,我们会对介绍 Java 和 JVM 的概念细节更感兴趣.因此我想推荐 Lukas Eder 在 jooq.org 发表的原创作品给大家. 你是从很早开始就一直使用 Java 吗?那你还记得它的过去吗?那时,Java 还叫 Oak,OO 还是一个热门话题,C++ 的 folk 者认为 Java 是不可能火起来,Java 开发的小应用程序 Applets 还受到关注. 我敢打赌,下面我要介绍的这些事,有一半你都不知道.下面让我们来深入探索 Java 的神秘之处.

分享SEO前进道路上必做的十件事(二)

在以前的文章分享SEO前进道路上必做的十件事(一)中,我和大家分享了SEO前进道路上必做的五件事,分别是解决收录问题.研究带来流量的页面.查看频道页的排名.通过基本流量挖词.多在意其它搜索引擎,这些都要求我们不断的对网站进行观察和修改,以便为以后做铺垫,今天接着上篇文章继续分享下文,也有五个方面. 优化长尾关键词 对于大型网站来说,长尾关键词是我们不得不考虑的一个因素.用户长尾关键词可以说是SEOER的一门必修课.即使我们的网站规模很小,内容也不够多,但是只要累积,还是能看到效果.长尾关键词的优

关于编程,大学没有传授的十件事

笔者依然记得当年完成学业时,深信自己已经准备好进入任何一家软件公司,并开始成为一个顶级的开发人员.显然,开始工作后没多久,笔者就意识到,还有很多事是我所不了解的. 在不断吸取经验的同时,笔者一直在努力学习那些我从来没有学过的,但却是成为优秀的开发人员所应了解的基本知识.以下是笔者希望自己能在学校就学到的十件事. 1. 我们总是错的 开发人员有着相当大的自我意识,包含了一些其他的非技术性缺陷,这也正是为什么我们很难发现我们做错了什么.我看到过很多无休止的设计讨论,开发人员不断地发表自己的想法--呵

创业之前你最应该做的十件事

35岁是青春的后期,35岁以后是收获的季节,如果你没有资格说这句话,你将会憎恨自己.所以在35岁以前,在烂漫蓬勃的青春年华里,你最好把下面十件事做好: 第一,学会本行业所需要的一切知识并有所发展.已故零件大王布鲁丹在他35岁时,已经成为零件行业的领袖,并且组建了年收入达千万美元的海湾与西部工业公司.每个人在年轻时都可能有过彻夜不眠.刻苦攻读,这在20岁甚或30岁都没有问题,但到了35岁,就不应该再为学习基本技能而大伤脑筋了.35岁之前是一个人从事原始积累的阶段,35岁之后就应该勃发了. 第二,养

使用Linux之前你应知道的十件事

Linux 不是 Windows.尽管它们也有相似之处,但你必须意识到,在你能舒舒服服的使用 Linux 之前,可能得先学习一些处理事情的新方式.Linux 是 UNIX 的开源克隆版本,UNIX 是个在 DOS 和 Windows之前就已存在的健壮的多用户操作系统(OS).下列条款一般而言适用所有基于 UNIX 的 *nix 系统,如 Linux 和各种 BSD 发行版.鉴于本文之目的,假定它是各种 Linux 发行版. 下面是你应知道的十件事: 文件系统 和那些为每个盘建立一棵文件树的操作系

购买刀片服务器之前用户需要知道的十件事

作为一个http://www.aliyun.com/zixun/aggregation/8510.html">IT经理,用户可能会遇到许多厂商宣传其解决方案更好.更节省成本.更有效率等等.许多新产品和技术推出之后都会使用营销战略,不过,如果我们抛弃大量的营销宣传并且落实到事实,又会出现什么情况呢?目前,刀片服务器到底能为用户做什么.在我们去掉那些言过其实的宣传之后,厂商围绕刀片服务器的宣传还能站住脚吗?让我们看看在购买刀片服务器之前用户需要知道的十件事. 1.刀片服务器使用较少的电源 这种

购买刀片服务器用户需要知道的十件事

http://www.aliyun.com/zixun/aggregation/13737.html">刀片服务器比机架式服务器更节省空间,同时,散热问题也更突出,往往要在机箱内装上大型强力风扇来散热.此型服务器虽然空间较节省,但是其机柜与刀片价格都不低,一般应用于大型的数据中心或者需要大规模计算的领域,如银行电信金融行业以及互联网数据中心等. 目前,节约空间.便于集中管理.易于扩展和提供不间断的服务,成为对下一代服务器的新要求,而刀片服务器正好能满足这一需求,因而刀片服务器市场需求正不断

WordPress更换域名后所要注意的十件事

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 WordPress更换域名可能大家都经历过,在新旧域名更换的过程中,如何才能使损失减到最少,这对于注重SEO的站长们却是至关重要的了.一面我就自己的经历谈一谈WordPress更换域名后注意的十件事. 一.修改数据库配置文件 如果你在同一主机同一空间上更改域名,这步可以省掉,如果数据库不同,还得要打开wp-config.php将数据库配置正确