使用Onefetch在终端中显示Git存储库摘要
Git是由Linus Torvalds于2005年开发的用于Linux内核开发的分布式修订控制系统。
Git允许用户在软件开发过程中跟踪源代码的更改。
GitHub,GitLab和其他版本控制存储库托管服务中托管了数百万个Git存储库。
在本教程中,我们将看到如何使用Onefetch在Terminal中显示Git存储库摘要。
Onefetch是一个命令行工具,可以直接从终端获取Git存储库的信息。
它显示给定Git存储库的各种详细信息,如下所示:
- 项目名,
- HEAD,
- 项目的版本,
- 项目创建的年份
- 用于创建此项目的编程语言的名称,
- 作者姓名及其贡献水平(按百分比),
- 上次更改存储库时,
- 存储库的URL,
- 提交总数,
- 总代码行,
- 储存库的大小,
- 项目许可证。
Onefetch将显示所有上述详细信息以及主要的编程语言的ASCII徽标。
当然,我们可以使用自己的或者文本输入的内容来更改ASCII徽标,或者完全不进行任何更改。
Onefetch是完全可定制的。
我们可以使用命令行标志对其进行配置,以准确显示所需的内容和所需的方式。
例如,我们可以决定要打印哪种语言的ASCII徽标,从输出中禁用特定的细节,更改ASCII美术颜色以及更改文本颜色等。
在撰写本教程时,Onefetch支持50多种编程语言。
如果我们认为缺少一种特定的语言,只需在GitHub上打开一个问题即可添加支持。
这是一个用Rust编程语言编写的开源项目。
Onefetch的源代码可在MIT许可下在GitHub上免费获得。
在Linux中安装Onefetch
可以通过多种方式安装Onefetch。
从发布页面下载Onefetch二进制文件:
$wget https://github.com/o2sh/onefetch/releases/download/v2.5.0/onefetch-linux.tar.gz
提取下载的存档,并将其移至“ $PATH”,如下所示:
$sudo mv onefetch-linux/onefetch /usr/local/bin/
Onefetch在AUR中也可用,因此我们可以使用任何AUR帮助器工具(例如Yay)在Arch Linux及其变体上安装Onefetch,如下所示:
$yay -S onefetch
要在NixOS上安装Onefetch,请运行:
$nix-env -i onefetch
在openSUSE Leap和Tumbleweed上:
$sudo zypper install onefetch
使用Onefetch在终端中显示Git存储库摘要
出于本教程的目的,我将获取Onefetch Git存储库本身的详细信息。
我已经在桌面上克隆了Onefetch存储库。
要在终端中显示Git存储库摘要,可以直接提到存储库的路径,如下所示;
$onefetch Desktop/onefetch/
或者转到Git存储库并运行onefetch:
$onefetch
输出示例:
R RR RR theitroad ~ git version 2.25.1
RRRRRRRRRR R -----------------------------
R RRRRRRRRRRRRRRR Project: onefetch (19 branches, 18 tags)
RRRRRRRRRRRRRRRRR R HEAD: c133f7a (master, origin/master)
R RR RRRRRRRRRRRRRRRRRRRRRR RR Version: v2.5.0
rR RRR RRRRRRRRRRRRRRRRRRRRR RRR R Created: 2 years, 2 months ago
RRR RR RRRRRRRRRRRRRRRRRRRRRRRRR RRRRR Languages: Rust (95.9 %) Python (3.1 %)
RRRRR RRRRRRRRRRRRRRRRRRRRRRRR RRRR Nix (1.1 %)
RRR RRRRRRRRRRRRRRRRRRRRRRRRRRRR RR Authors: 57% o2sh 488
R RRRRRRRRRR= RR = RRRRRRRRRRR 5% dependabot[bot] 50
RRRRRRRRRRRr= RR = RRRRRRRRRR 5% Spenser Black 49
RRRRRRRRRRR RR RRRRRRRRRR Last change: 11 hours ago
RR==RRRRRRRRRRRRRRRRRRRRRR===RR Repo: https://github.com/o2sh/onefetch.git
RR = .==RRRRRRR RRRRRR== = Rr Commits: 855
RR = =========== = RR Lines of code: 2360
RR R Size: 12.27 MiB (97 files)
R R License: MIT
R
从上面的输出中可以看到,Oefetch显示代码分布,主要贡献者(按提交次数),存储库大小,创建日期,版本,HEAD,最后更改,总行数和许可证等。
如前所述,Onefetch在输出中显示主导语言的ASCII艺术。
由于Onefetch的主要部分是在“ Rust”中开发的,因此它显示了Rust语言的ASCII艺术。
我们还可以使用'-a','--ascii-language'标志使用其他某种语言的ASCII。
以下命令显示Onefetch Git存储库摘要以及Python ASCII徽标:
$onefetch -a python
请注意,我正在git存储库内部运行Onefetch。
如果存储库存储在其他位置,则必须指定其完整路径,然后指定标志。
输出示例:
::::::::::::: theitroad ~ git version 2.25.1
:::::::::::::::::: -----------------------------
::: :::::::::::::: Project: onefetch (19 branches, 18 tags)
:::::::::::::::::::: HEAD: c133f7a (master, origin/master)
:::::::::: Version: v2.5.0
:::::::::::::::::::::::::: ______ Created: 2 years, 2 months ago
:::::::::::::::::::::::::::: ________ Languages: Rust (95.9 %) Python (3.1 %)
::::::::::::::::::::::::::::: _________ Nix (1.1 %)
::::::::::::::::::::::::::::: _________ Authors: 57% o2sh 488
:::::::::::::::::::::::::: __________ 5% dependabot[bot] 50
::::::::::: ___________________________ 5% Spenser Black 49
::::::::: _____________________________ Last change: 12 hours ago
:::::::: _____________________________ Repo: https://github.com/o2sh/onefetch.git
:::::::: _____________________________ Commits: 855
:::::: __________________________ Lines of code: 2360
____________________ Size: 12.27 MiB (97 files)
____________________ License: MIT
______________ ___
__________________
_____________
要列出所有受支持的语言,请使用'-l','-languages'标志。
$onefetch -l
我们还可以使用自定义图像,例如使用'-i','-image'标志的自己的徽标。
$onefetch -i ~/theitroad.png
默认情况下,Onefetch仅显示三个作者。
几位作者可能会为Git项目做出贡献。
要显示要显示的作者数量,请使用'-A','--authors-number'标志。
$onefetch -A 10
上面的命令将显示10位作者。
还有许多其他标志可以进行各种自定义,例如更改ascii颜色,文本颜色,颜色分辨率,忽略合并提交,排除文件,文件夹等。
请参阅帮助部分以了解所有可用选项:
$onefetch -h
Onefetch帮助部分:
onefetch 2.5.0
Git repository summary on your terminal
USAGE:
onefetch [OPTIONS] [--] [input]
OPTIONS:
-a, --ascii-language <LANGUAGE> Which LANGUAGE's ascii art to print.
-d, --disable-fields <FIELD>... Allows you to disable FIELD(s) from appearing in the output.
-c, --ascii-colors <X>... Colors (X X X...) to print the ascii art.
--no-bold Turns off bold formatting.
-l, --languages Prints out supported languages
-i, --image <IMAGE> Path to the IMAGE file
--image-backend <BACKEND> Which image BACKEND to use.
--no-merge-commits Ignores merge commits
--no-color-blocks Hides the color blocks
-A, --authors-number <NUM> NUM of authors to be shown. [default: 3]
-e, --exclude <EXCLUDE>... Ignore all files & directories matching EXCLUDE.
-h, --help Prints help information
-V, --version Prints version information
ARGS:
<input> Run as if onefetch was started in <input> instead of the current working directory.

