開發者必備神器,你真的會用嗎?

2021-10-17 21:27:33 字數 3439 閱讀 1513

git是在開發過程必不可少的一款工具,它經常用於**的版本控制與團隊開發。

經常使用git的同學應該都很清楚,git在**的提交、合併、版本管理過程中涉及大量的命令。

這對於開發者來說具有一定的記憶負擔,而且重複輸入複雜冗長的命令,也會導致效率急劇降低。

別名則是乙個行之有效的解決方法,通過使用別名,可以為最常用和複雜的git命令建立快捷方式,這樣能夠極大的提公升開發效率。

本文,就來介紹能夠讓開發效率倍增的8個別名。

要想定義別名,需要用到git config配置命令:

$ git config --global alias.p 'push'
上述命令中alias.p表示要定義乙個別名p,push代表要替換的命令。

簡而言之,上述配置的含義就是利用p來替代push命令。

下面,就可以通過別名來使用你需要的命令:

$ git p
檢視當前配置的別名,可以通過如下命令:

$ git config --global -l

user.name=ricardo

[email protected]

alias.p=push

對於linux有一定基礎的同學都知道,我們可以使用自己喜歡的shell來定義別名,例如,bash或zsh。

但是,使用git定義別名能夠提供shell無法提供的功能。

首先,它允許你能夠在不同shell下使用,無需其他多餘配置。其次,git將你定義的別名儲存到使用者配置檔案中,從而,它允許你將檔案轉移到其他計算機。

當然,至於更加傾向哪種方式來定義別名,取決於自己的使用習慣。

下面,就開始正式介紹這8個別名。

在使用git過程中,會經常用到git status來檢視目前更改的檔案。

預設情況下,此命令會提供詳細輸出,內容比較多,有很多或許用不到。

通過新增選項-sb能夠減少輸出資訊,避免冗長無用的資訊輸出:

$ git config --global alias.st 'status -sb'
這樣,使用git st命令就可以輸出清晰明了的資訊。

建立乙個別名以單行顯示提交,以獲得更緊湊的輸出:

$ git config --global alias.ll 'log --oneline'
顯示有關你最近提交修改的詳細資訊:

$ git config --global alias.last 'log -1 head --stat'
用這個別名來檢視最近一次提交的修改:

$ git last

commit f3dddcbaabb928f84f45131ea5be88dcf0692783 (head -> branch1)

author: ricardo date: tue nov 3 00:19:52 2020 +0000

commit to branch1

test2 | 1 +

test3 | 0

2 files changed, 1 insertion(+)

在對git儲存庫進行更改時,會大量使用git commit。

利用別名使git commit -m命令更高效:

$ git config --global alias.cm 'commit -m'
git remote -v命令列出所有已配置的遠端儲存庫,用別名rv來縮短它:

$ git config --global alias.rv 'remote -v'
git diff命令顯示不同提交檔案之間或提交與工作樹之間的差異,用d別名簡化它:

$ git config --global alias.d 'diff'
標準的git diff命令對於較小的更改可以正常工作。

但是對於更複雜的操作,可以使用諸如vimdiff之類的外部工具來使其更加有用。

$ git config --global alias.dv 'difftool -t vimdiff -y'
使用如下命令可以對比兩個檔案的差異:

$ git dv 33559c5 ca1494d file1
gl別名使列出所有使用者配置變得更加容易:

$ git config --global alias.gl 'config --global -l'
git別名使您可以在字首前面加上!來定義更複雜的別名,例如執行外部shell命令。

你可以使用它來執行自定義指令碼或更複雜的命令,包括shell指令碼。例如,定義se別名以在提交中搜尋:

$ git config --global alias.se '!git rev-list --all | xargs git grep -f'
利用這個別名可以在提交中搜尋匹配字串資訊:

$ git se test2

0baa729c1d683201d0500b0e2f9c408df8f9a366:file1:test2

ca1494dd06633f08519ec43b57e25c30b1c78b32:file1:test2

使用git別名的乙個高效的途徑,除了上述介紹的8個常用的別名,git還支援自動更正功能。

如果輸入有誤,預設情況下,git建議使用與您鍵入的命令相似的命令,包括別名。

例如,如果您輸入ts而不是st作為狀態,則git將建議正確的別名:

$ git ts

git: 'ts' is not a git command. see 'git --help'.

the most similar command is

st

如果啟用了自動更正,git將自動執行正確的命令:

$ git config --global help.autocorrect 20

$ git ts

warning: you called a git command named 'ts', which does not exist.

continuing in 2.0 seconds, assuming that you meant 'st'.

## branch1

?? test4

git是一款開發者必備的工具,無論是前端、後端、演算法,如果涉及團隊開發,就很難繞過git。

本文只是介紹了一些git高階用法,如果你還不具備git的基本知識,可以系統的學習一下它的常用命令,分支、標籤、合併、回滾、版本管理等等,都值得詳細了解一下。

你真的會用GOOGLE嗎

平時很多人用google搜尋引擎搜尋資訊,經常搜尋 成千上萬的網頁,檢視幾頁就沒耐心找下去了。在google上搜尋資訊,不只輸入希望搜尋的片語這麼簡單,這樣是無法得到做好的搜尋結果的。google 為使用者提供了很多基本搜尋語法,熟練的運用google搜尋,將很快的搜到我們需要的結果。短語搜尋 布林...

Markdown 你真的會用嗎?

markdown指南 markdown basics 我有幾張阿里雲幸運券分享給你,用券購買或者公升級阿里雲相應產品會有特惠驚喜哦!把想要買的產品的幸運券都領走吧!快下手,馬上就要搶光了。我常用如 橫線分隔符 超級鏈結 markdown 常遇到的問題 縮排 每段文章我都會習慣性地做首行縮排,但如果直...

你真的會用scanf嗎?

scanf使用技巧1 456 7894 54如何將以上數字輸入陣列呢,只需要用下面這段 scanf d arr i 實際上在鍵盤上輸入時,鍵入4 空格 5 空格 6 空格 scanf使用技巧2 當我們有有乙個很大的陣列需要輸入時,而每次輸入元素的個數都不一樣,這時該怎麼辦呢?使用下面這段 即可 in...