git统计每个人的代码行数_每个开发者都应该掌握的GitHub奇技淫巧

1893a9929b36c147e2905446d72f30b3.png

现在除了云技术之外,最深入码农农心估计就数Git和GitHub了。这成了每一个技术人员的日常,commit push到Github成了我们日常生活不可分割的一部分。那么,使用Github有啥奇技淫巧呢?好多人可能想知道这个。最近Github博客频道发布了GitHub市场产品经理十年开发工程师Lee Reilly的博文,给我们总结了使用GitHub中的技巧,让我们一起来学习吧。

文件模糊查询

大家可能没有注意到,GitHub提供了文件的模糊查询的。在任何仓库中都以访问它,输入要查找的文件的名称。这是一个非常有用的功能,可以帮助我们迅速发现要找文件所在。以查找Rails项目并快速寻找对schema.rb应用程序为例:

132e01938c58d28988b456f425efec22.gif

轻松浏览文件和目录

说到搜索文件, Octotree的浏览器扩展(GitHub/ovity/octotree)可以帮助我们浏览目录,并使用我们所熟悉的树状层级结构打开文件:

d9cd83307804b865ffe02d21ff242bc4.gif

优点:支持与GitHub Enterprise works一起使用

注:几年前,Lee和作者有关支持GitHub Enterprise的信息。

如果要为GitHub构建浏览器扩展,并希望确保它适用于GitHub Enterprise,则可以通过加入GitHub Developer Program获得开发人员许可证。(也算一个干货小技巧)

收到新通知的警报

关于浏览器扩展主题,有一个扩展notifier-for-github (GitHub/sindresorhus/notifier-for-github),可以在工具栏项目上的醒目图告知正在等待多少GitHub通知。如果无法正常显示,可以启用桌面通知。

9d06ba9af79775c73dd354c0c77060a0.png

它还适用于GitHub Enterprise。您要做的就是更改API接口匹配实例的URL。

让@信息脱颖而出

无论精心设置了多少邮件通知规则或者过滤器,难免会有漏网之鱼。有一个扩展github-mention-highlighter(GitHub/benbalter/github-mention-highlighter)可以突出显示了对名字的所有引用。即使是在文字墙中,或者当快速浏览评论时,也能看到一眼就发现所有@信息。

9f2a921f6c3100cd6c1ca33979ad43c2.png

链接到代码行

这个技巧不算太隐秘,但是并非所有人都知道。在查看文件时单击行号来链接到特定的代码行。默认情况下行号(例如#L1337)被附加到URL,会直接连接到这一行行。

如果该文件被编辑,删除或重命名,该链接将不能再按预期工作。这时可以按y或单击Copy permalink来生成将始终有效的规范URL。

b5fa8c76d51a8f1f363c182364428614.png

还可以通过按住SHIFT并选择开始和结束行的链接范围。

额外的好处:如果在GitHub注释中添加代码段链接,则会显示漂亮可视化代码显示。

9c3626ecfd8b3453351ed3b7614ba1ee.png

MD文档技巧

GitHub Flavored Markdown非常适合文本和基本表的原始格式设置,但有时您需要发挥创造力,使其能够按您想要的方式工作。

键盘标签

可以使用 标签使文本看起来像按钮,这与常规反引号文本略有不同。非常适合在README或者Wiki中记录诸如键盘快捷键或游戏控件之类的内容。

Press W to go up, and A to go down.

If you can find the ESC, pressing that will fire missiles

1897a89801fd025171e7c47c2e3ab536.png

十六进制代码可视化

将十六进制颜色放在反引号中会自动渲染出该颜色六角形图块。

GitHub contribution graph colors: `#C6E48B` `#7AC96F` `#249A3C` `#196127`

277d1a0a450eb09ac6396329824eee8e.png

Diff可视化

可以使用反引号对diff可视化,会根据需要突出显示diff内容红色或绿色的线。

```diff

10 PRINT "BASIC IS COOL"

- 20 GOTO 11

+ 20 GOTO 10

```

b3f2861e126d918bc5d1496510d766ea.png

实际上,如果在打开三个反引号之后添加了语言,则会相应地用该语言突出渲染显示代码的语法。

大段描述技巧

添加冗长的错误日志或冗长程序输出的错误信息有助于问题的解决,但如果它占用了页面大量的空间,可以考虑使用标签。

Having some problems firing up the laser.

Click here to see terminal history + debug info

488 cd /opt/LLL/controller/laser/

489 vi LLLSDLaserControl.c

490 make

491 make install

492 ./sanity_check

493 ./configure -o test.cfg

494 vi test.cfg

495 vi ~/last_will_and_testament.txt

496 cat /proc/meminfo

497 ps -a -x -u

498 kill -9 2207

499 kill 2208

500 ps -a -x -u

501 touch /opt/LLL/run/ok

502 LLLSDLaserControl -ok1

bf93199da79f815a564943b6f988a6ba.gif

使文字和图像居中

在2020的今天,将网页中的所有内容居中仍然是一个很好的实践经验。有一个标签

[ 你的内容]
。比如,非常适合将徽标放在仓库的自述文件中居中,可以用:

This is some centered text.

d18be42c3f682219c6a6a52dd0055ab7.png

较小的文字

标记中换行可以使其变小。非常适合在图像下添加"图1:描述"之类的内容,或者使表中的文本变小以使其不会水平滚动。

Fig 1: Megatocat into action

View more octocats on the [Octodex](octodex.github.com/)!

a440d897b4eb4975b56bba5685d0e8c0.png

至此,我们基本上已经回到90年代了,它具有良好的老式手工制作HTML。就像当初使用记事本和Netscape Navigator进行此操作的人一样,我对此表示满意。

魔术Markdown表✨

Table-magic(stevecat.net/table-magic/)是在Markdown中用于构建和维护复杂表格的利器。这个开源工具可让我们轻松,快速地在多种表格格式之间转换,包括CSV,TSV,Markdown,SQL和HTML。可以用以内置形式编写表格,然后简单地复制并粘贴markdown。

f79caddab9acc30f289a813b5177d49d.gif

专题标签的URL技巧

GitHub UI提供了供一种按主题和语言筛选的方法仓库(例如,搜索所有分类为#game JavaScript的仓库)。查看两个主题组合的搜索结果的唯一方法是通过一些URL技巧。只需通过?q=[TOPIC]在主题URL后面附加一个即可组合两个主题的结果。比如:

所有带有#covid-19和#visualization标记的仓库:GitHub

/topics/covid-19?q=visualization

所有标记为#chrome-extension和#github的仓库:GitHub /topics/chrome-extension?q=github

所有标记为#unity和#shader的仓库:GitHub /topics/unity?q=shader

所有标记为#minecraft和#mod的仓库:GitHub/topics/minecraft?q=mod

给仓库添加专题标签可帮助人们发现专题,甚至为专题做出贡献?在仓库中添加专题标签非常简单:只需在仓库介绍前面单击按钮并输入一些与项目目的和专题关键字即可。​

b2972a77306dce5355d52c7d12235216.gif

黑暗主题

有些小伙伴可能会对黑暗主题感兴趣,有一个非官方的GitHub Dark Theme浏览器扩展(GitHub/StylishThemes/GitHub-Dark)。它可与Chrome,Firefox,Opera和Safari配合使用,有黑暗主题控的可以尝试:

8710ab5ca252c4ead8d090b15cfdfb9a.png

仓库贡献统计

有时,分析仓库的元数据并提取指标很有用(或很有趣)。希望没有人判断他们进行了多少次提交,但是可以使用git shortlog -sn命令行可以按照提作者交数统计的贡献大小列表。

git shortlog -sn

3164 Stanley Goldman

1549 Andreia Gaita

195 Don Okuda

191 Emil "AngryAnt" Johansen

15 Meaghan Lewis

9 Lee Reilly

8 Sarah Guthals

7 Sam Christiansen

7 Mauro Palumbo

6 Marcus Christensen

还可以使用排除合并提交git shortlog -sn --no-merges。

如果统计对象是公共仓库,则GitHub High Scores(leereilly.net/github-high-scores)能提供仓库贡献者的老式8位类似街机的样式视图。非常适合炫酷,打印出来以固定在办公室的公告栏或冰箱上。

7766d5140c7feb71fdc58b5fca82d7f9.png

以上只是对提交内容的统计,对应到代码行数呢?相对比提交数这可能是一个更重要的指标。有大量简洁的CLI项目可帮助我们分析Git数据。

有一个工具git-quick-stats(GitHub/arzzen/git-quick-stats)很好地统计总结仓库活动。甚至可以按天,小时和月查看贡献信息。

git-quick-stats

Stanley Goldman :

insertions: 1800 (1%)

deletions: 1455 (1%)

files: 221 (2%)

commits: 108 (3%)

lines changed: 3255

first commit: Thu Apr 6 09:33:53 2017 -0700

last commit: Fri Jul 27 14:14:51 2018 -0400

另一个工具git-fame(GitHub/casperdcl/git-fame)统计贡献信息时候,包括了代码行。

git-fame

a0fafc55e41f7a1ae22736c3c48030f7.png

git-stats(GitHub/IonicaBizau/git-stats)统计信息包括了各种有趣的数据,包括贡献百分比和一个精美的ascii饼图。

0e63afdb7b24f1f1dd774ded1f8f1090.png

摩尔斯电码训练

最后但并非最不重要的一点……您是否梦想过一种锻炼身体和练习莫尔斯电码的方法?有一个工具veggiedefender(GitHub/veggiedefender)可让我们通过反复关闭笔记本电脑来生成莫尔斯电码,并附带一些非常的功能列表。健身和信息发送两不误:

6d4f88e19ff53e1cdb32eb28094fe6d4.gif
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值