【译】原来 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 |件。

【译】原来 GitHub 还有这些骚操作?

2. 更轻松的阅读文件与目录

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

【译】原来 GitHub 还有这些骚操作?

好音讯:它能够和 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 还有这些骚操作?

同样,它也能够作业于 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 ( +字的当地,即使在我快速阅读谈论的时分,我也能够看到任何提示我的当地。

【译】原来 GitHub 还有这些骚操作?

5. 代码片段链接

这不是一个秘密,但很显然不是一切人都知道。当你阅读一个文件时,你能够经过点击文件中每一s M a _) B L )代码前面的数字,创v ? * C b立代码中特殊行的链接。默许情况下,行号(如:#L1337N 6 N ` X - B lj + ] S ( L会被追加到 URL 中,它会直接跳转到你标记那一行中。

但假如文件被修正、删除或是重命名,链接将不会/ ? I b再管用。你能够经过键盘上的 y 或许点击 Copy permalink 来生成一个标准链接,这样它就w – a会一直作业了。

【译】原来 GitHub 还有这些骚操作?

你也能够经过按住 shift 键 ,选择一个行号的规模来生成链接。

小惊喜:假如你在 GiuHub 的谈论中增加了一个代码片段链接,一个漂亮的代) O C T码界面就会呈现。

【译】原来 GitHub 还有这些骚操作?

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.
【译】原来 GitHub 还有这些骚操作?

可视化的十六进制代码

在反引号(“)中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` 
【译】原来 GitHub 还有这些骚操作?

可视化差异

你能够运用反引号和 diff 来获取一个可视化的差异表现形式。它会高亮一行为红色或许绿色。

    ```diff
10 PRINT "BASIC IS COOL"
- 20 GOTO 11
+ 20 GOTO 10
```
【译】原来 GitHub 还有这些骚操作?

事实上,假如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
【译】原来 GitHub 还有这些骚操作?

居中文本和图片

已经是 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>
【译】原来 GitHub 还有这些骚操作?

更小的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/)!
【译】原来 GitHub 还有这些骚操作?

7. URL hacking

一个我带有负罪感的y n 4 y 0 X快乐就是在 GitHub 寻找带= | s有标签 #game 的项目 ,然后测试和修正它们。这在咖啡时刻或许无聊的星期天下午,是一个很好的活动。

我们在页面露出的J @ – U H F S方法(比方查找框)中筛选内容时,一般都经过一个特定的主题和言语(比方,查找一切用 JavaScript 写的,分类为 #gameH 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-19visualization 的库房:

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字就能够了。

【译】原来 GitHub 还有这些骚操作?

8. 漆黑形式

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

【译】原来 GitHub 还有这些骚操作?

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一个相似小霸王年代的游戏界面,展示出你的库房的奉献者。

【译】原来 GitHub 还有这些骚操作?

这只是 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 包含了一切你能想到的风趣数据,包括奉献和饼状图。

【译】原来 GitHub 还有这些骚操作?

可是,期望你和你的团队明白,比起代码行数和O – f ` q / T 9 R提交量来说,你的价值由更多、更牢靠的衡量目标来决议。假如你每个周末都在为代码数量和提交量不足而发愁,那么是时分换个新作业了。

最终的话

你的点赞会给我一天好心情,假如能随手 来个 star,再趁便关注下大众号(零幺小馆V { B ! N c 9 / b)就更完美了。

【译】原来 GitHub 还有这些骚操作?