使用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.