【译】原来 GitHub 还有这些骚操作?
作者:Lee Reilly
原文:github.blog/2020-04-09-…
翻译:零和幺
我作为一名工程师、开发者以及市场管理者,运用 GitHub 已经超越 10 年的时刻了。在这期间,我把握了一些运用 GitHub 的小技巧:如管理我的告知音讯,快速定位内容,创立一个 pull request 以及一些我运用过的第三方插件。! I * Z : / w X W我会同享一些我最喜欢的东西,也期望我同享的这些东西能对你有用。
1. 文件模糊查找
当我发现文件模糊查找这个功用( Y I的时分,我已经运用 GitHub 超越一年了。当进入任何库房后,只需要按下键盘上的 t
键,就能够进入文件模糊查6 S 6 2找形式了。输入任何你想要找到文件名,就能够找到对应的文0 ) t , 8 ? k K |件。

2. 更轻松的阅读文件与目录
说起查找文件,有一个十分不错的阅读器插件叫 Octotree 。它像一个传统的树状导航栏,协h # b助你阅读目录、翻开文件。

好音讯:它能够和 GitHub Enterpri, I %se 一起作) M a 8 I W % n (业。
风趣的事:几年前,我与该插件的作者沟通了关于项目怎么支持 GitHub Enterprise。假如你想构建一个服务于b M : r c P 8 ? GitHub 的阅读器插件,也想承认该插件是否能够作业于 GitHub Enterprise,你能够经过加入 GitHub Developer Program获得一个开发者证书
3. 告知提示
在阅读器插件这个主题上,来自 @sindresorhus 的项目 notifier-for-gith= / ,ub,能够切当的告知你有多少个 GitHub 告知还未被处理。它有一个不起眼的图标显示在一个东西栏中l ] t y。当a Y *然,假如你喜欢,你也能够设置为桌面告知。

同样,它也能够作业于 GitHub Enterprise。7 & ^ E你所需要做的唯一一件事就是改变 API 指向,让它匹配你个人的 URL。(如,api.github.cyberdynesystem.com)
4. 让你的 @提示 愈加明显
Mention H: 2 1 W aighlighterw I _ ; G 6 ^ a 是我朋友 @benbalter 的著作。它能够高亮一切引证) n 8我名? E 0 , v X ( +字的当地,即使在我快速阅读谈论的时分,我也能够看到任何提示我的当地。

5. 代码片段链接
这不是一个秘密,但很显然不是一切人都知道。当你阅读一个文件时,你能够经过点击文件中每一s M a _行) B L )代码前面的数字,创v ? * C b立代码中特殊行的链接。默许情况下,行号(如:#L1337N 6 N ` X - B l
)j + ] S ( L会被追加到 URL 中,它会直接跳转到你标记那一行中。
但假如文件被修正、删除或是重命名,链接将不会/ ? I b再管用。你能够经过键盘上的 y
或许点击 Copy permalink
来生成一个标准链接,这样它就w – a会一直作业了。

你也能够经过按住 shift
键 ,选择一个行号的规模来生成链接。
小惊喜:假如你在 GiuHub 的谈论中增加了一个代码片段链接,一个漂亮的代) O C T码界面就会呈现。

6. 必须& G k m : A ~ u知道的 Markdown 格式化技巧# G 5 S R
GitHub Flavored Markdown 是一个关于基本文本以及根底表格来说很好的东西,但有时分你又期望能够有点创造性。
键盘标签
你能够用 <kbd>
标签让文本变成一个相似 button 按钮的样子,让它看起来? k B * ` V V 9与一般的文本略有不同。它能够用来描述相似键盘快捷键或许游戏操控按键之类的功用。
Press <0 - f q;kbd>! X : . ( T Z S;W</kbd> to go up, <kbd>A</kbd> to go down. If you can find the <kbd&9 z } ,gt;ESC</kbd>, pressing that wL W ~ill fire missiles.

可视化的十六进制代码
在反引号(“)中5 R b R s g Z ~ P运用十六进制(hex)的颜色,我想它是真实的优秀(hexcellent)!
Git} u $ +Hub contributv K h ] ion graph colors: `#C6E48B` `#7AC96F` `#24U ) ! _ _ j9A3C` `#1961 S ! % 6 ) ~ / :27`

可视化差异
你能够运用反引号和 diff
来获取一个可视化的差异表现形式。它会高亮一行为红色或许绿色。
```diff
10 PRINT "BASIC IS COOL"
- 20 GOTO 11
+ 20 GOTO 10
```

事实上,假如z o N A # z *你在开端的三个反引号后边加上言语,代码会根据语法高亮。
details 魔法
增加一定长度的过错日志或许冗长的程序输出,到一个 issue 中,l ~ ; % / u能够有用的解决一个 bug ,可是假如它将占满一整页的位置,无妨考虑运用 <details>
和 <summary>
标签。
Having some problems firing up the laseo t %r.
<details>
<summary>Click here to see terminal history + dm $ P | e U n ( 7ebug info</summary>
<pre>
488 cd /opt/LLL/controll5 J r P q E & Ger/H W [ C _ ~ = c claser/
489 viK 5 ! j s j # LLLSDLaserControl.c
490 make
491 make install
492 ./sanity_check
493 ./configure -o test.cfg
494 vix 5 w 5 D tew X v % C Est.c] 3 w F $ ~ hfg
495 vi ~/last_N ; . O k I 5will9 X 7 , ? b !_and_testament.txt
496 cb F ^ S #at /proc/meminfo
497 ps -a e N R W [ /a -x -u
498 kill -9 2207
499 kill 2208
500 ps -h 2 V | , W .a -xl a I -u
501 touch /Y / , H _ A hopt/LLL/run/ok
502 LLLSDLaserControl -ok1

居中文本和图片
已经是 2020 年了,但我仍然努力在 Web 网^ + r 5 [ r d _页中居中任何东西。这段代码让我十分惊喜:<div align="center"> [ Your content here ] </div>
。这样能够完美的让你的 Logo 在你库房中的p c 4 7 s README 中完成居中:
<div align="center">
<img src="https://octodex.github.com/images/dunetocat.pnf ] | (g" width="200">
<p>This is some centered text.</p>
</div>

更小的Z o V t I文本
将本文放在 <sV l k 4 = g n j fup>
或许 <sub>
标签中,能够让文本看起来更小一些。比方在图片的下方加入”Fig1: description”,或许在表格中让文本更小一些,这样就不会呈现横向滚动条了。
<div align="center">
<img src="https://octodex.github.com/images/megacat-2.png" width="200"><br>
<sup><strong>Fig 1:</strong> Megatocat into action</supS x w : b A J>
</div: [ 2 6 5 L a>
View more octocats on the [Oc% R 2 Jtodex](https://octodex.github.com/)!

7. URL hacking
一个我带有负罪感的y n 4 y 0 X快乐就是在 GitHub 寻找带= | s有标签 #game
的项目 ,然后测试和修正它们。这在咖啡时刻或许无聊的星期天下午,是一个很好的活动。
我们在页面露出的J @ – U H F S方法(比方查找框)中筛选内容时,一般都经过一个特定的主题和言语(比方,查找一切用 JavaScript 写的,分类为 #game
的H 8 A i w W w库房)。但假如你想查找有关联的两个主题结合后的成果,唯一的方法就是经过 URL h( s z q h L G f Qacking 的手段。
简单的追加一个 ?q=# S I O F D 9[TOPIC]
到一个主题的 URL 中,就能够获[ K k X Q m ] Q /取两个主题结合后的成果了。举个比如:
- 一切被标记为
#covid-19
和visualization
的库房:
gi& s | 0 ? ` d +thub.com/topics/covi…
- 一切被标记为
#chrome-extension
和#github
的库房:
github.com/topics/chro…
- 一切标记为
#unity
和#shader
的库房:
github.com/topics/unit…
- 一切被标记为
#minecraft
和#mod
的库房:
git4 B U $ zhub.com/topics/mine…B . , I & W ~ * t
你知道么: 为你的库房请求主题能够协助人们更好的发现它们,甚至为你的库房做奉献?只需你在项目的U 6 3 & n 8 o主题区域,点一下按钮,并且输入几个关键K . A s . Q + 5 B字就能够了。

8. 漆黑形式
unofficial GitZ [ DHub Dark Theme 是一个能够作业在 Chrome,Firefox,Opera 和 Safari 上的阅读器插件,能够让 GitHub[ p 9 呈现漆黑形式。

9. 一个数字游戏
有时分它能够很有用的帮你分分出库房的元数据和目标。比方说你能够运用命令行 git shortlog -sn
生成一个作者列表,上面展^ N T D示出他们提交的次数。
$ git shortlog -sn
3164 Stanley Goldman
1549 Andreia Gaita
195 Don Okuda
191 Emil "AngQ ` d g [ryAnt" Johf L j ` z T `ansen
15 Meaghan Lewis
9 Lee Reilly
8 Sarah Guthals
7 Sam Christiansen- = ^
7 Mauro PY o kalumbo
6 Marcus Christensen
当然你 0 S }也能够运用 git shortlog -) N ` `sn -no-merges
,去除 merge 的 commit 信息。
关于一个公共库房来说,GitHub High Scores 会给你9 = 8 _ % Q 9 e G一个相似小霸王年代的游戏界面,展示出你的库房的奉献者。

这只是 commit 数量的计算,那么关于代码行数的计算呢?有十分多的 CLI 项目能够协助你分析w _ X Git 数据。
@arzzen 的 g? U } 3 oitO = q v 5 ~-quick-stats 会展示出库房活动的总览。你能够查看每月、每天、每小时的同享。
$ git-quick-stats
StanR Q 1 }ley GoldmanX i 4 7 p n [ R ~ <StanleyGoldm d # ; k s 8an@gE 3 C 2 z b M .ithub.com>:
insertions: 1800 (1D C x q } c e 2%)
delej = f P | n 1 . 2tions: 1455 (1%)
files: 221 (2%)
commits4 F ^: 108 (38 y { : : [%)
lines changed: 3255
first commit: Thu Apr 6 09:33:53 2017 -0700
last commit: Fri Jul 27 14:14:51 2018 -0400
@casperdcl 的 git-fame 也} W 7 f能够计算对库房的奉献,包8 H ( } | 5 [括代码行数计算。
$ git-famr ( @ w $e
Total commits: 5190
Total ctimes: 17640
Total files: 1058
Total lm l c ! ]oc: 113683
| Author | loc | coms | fils | distribuA + a E Jtion |
|:------------------r #----Z t 8 @---|------:|-------:|-------:|:----------------|A r * G x v p
| Stanley Gold? r , $ Z R F Fman | 75955 | 3164 | 414 | 66.8/6t K , ]1.0/39.1 |
| Andreia G` m 3 P : f Qaita | 34438 | 1549 | 477 | 30.3/29.8/45.1 |
| Emil "AngryAnt" Johansen | 2230 | 191 | 35 | 2.0/ 3.7/ 3.33 h 9 J Y 0 x ` ^ |
| Don Okuda | 312 | 195 | 51 | 0.3/ 3.8/ 4.8 |
| Meaghan Lewis | 228 | 1? Z | g l D L v5 | 31 | 0.2/ 0.3/ 2.9 |
@IonicaBizau 的 git-stats 包含了一切你能想到的风趣数据,包括奉献和饼状图。

可是,期望你和你的团队明白,比起代码行数和O – f ` q / T 9 R提交量来说,你的价值由更多、更牢靠的衡量目标来决议。假如你每个周末都在为代码数量和提交量不足而发愁,那么是时分换个新作业了。
最终的话
你的点赞会给我一天好心情,假如能随手 来个 star,再趁便关注下大众号(零幺小馆V { B ! N c 9 / b)就更完美了。
