日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

16个不错的 git 别名

發(fā)布時(shí)間:2025/3/21 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 16个不错的 git 别名 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

git 是一個(gè)非常棒的源代碼管理工具,它的使用已經(jīng)完全整合到開(kāi)發(fā)的工作流當(dāng)中;同時(shí),git 還是一個(gè) review/OTAP/deployment 工具。

當(dāng)在 CLI 中使用 git 時(shí),有時(shí)必須輸入很多比較長(zhǎng)的命令來(lái)完成一些事情。盡管大部分 git 命令是很簡(jiǎn)單的,但是也有一些非常復(fù)雜并難以輸入的命令。而開(kāi)發(fā)人員是比較懶的,并會(huì)盡可能的少輸入命令。

因?yàn)樯鲜銮闆r很符合我,所以對(duì)于我經(jīng)常使用的 git 命令,我會(huì)使用其別名來(lái)代替,并會(huì)改進(jìn)命令的返回信息。在這篇文章中,我會(huì)介紹一些簡(jiǎn)單但非常有用的 git 別名。

簡(jiǎn)化常用的 git 命令的別名

一些 git 別名非常簡(jiǎn)單,用這些別名替換原始的 git 命令也意味著減少你的輸入,這有一個(gè)別名列表:

co = checkout # Checkout a branch cob = checkout -b # Checkout a new not yet existing branch f = fetch -p # Fetch from a repository and prune any remote-tracking references that no longer exist on the remote. c = commit # Commit you changes p = push # Push you changes to a remote ba = branch -a # List both remote-tracking branches and local branches. bd = branch -d # Delete a branch only if it has been merged bD = branch -D # Force delete a branch dc = diff --cached # Display the staged changes

查看 git 的提交狀態(tài)

查看當(dāng)前工作目錄的提交狀態(tài)是大多數(shù)開(kāi)發(fā)者的一項(xiàng)日常工作。我們會(huì)分段查看自己對(duì)哪些文件做了改變,并判斷我們是否改變了原本不打算改變的文件。

將命令簡(jiǎn)化,并讓其顯示更多的信息:

st = status -sb

例如:

在 patches 中呈現(xiàn) git 改變

我喜歡在添加改變之前進(jìn)行 review,或許你也這么做。git diff?是能實(shí)現(xiàn)這個(gè)需求的一個(gè)不錯(cuò)的工具。但如果你只想添加你改變的那部分,或者每次只想 review 一小部分,你可以將你改變的那部分分多次提交。

在這種情況下,git add -p?能解決你的需求:

a = add -p

例如:

更有用的 git 日志

git 日志能幫助我們查看在工作目錄下對(duì)代碼做了哪些改變,日志不僅記錄了代碼的提交歷史,而且會(huì)記錄分支的合并情況。當(dāng)我們?輸入規(guī)范的提交信息?時(shí),git 日志就成為一個(gè)查看代碼變更和為什么變更的重要工具。

改善 git 日志的輸出能快速定位這些改變:

plog = log --graph --pretty='format:%C(red)%d%C(reset) %C(yellow)%h%C(reset) %ar %C(green)%aN%C(reset) %s'

例如:

lg = log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit

例如:

tlog = log --stat --since='1 Day Ago' --graph --pretty=oneline --abbrev-commit --date=relative

例如:

按照合并數(shù)量給貢獻(xiàn)者排序

當(dāng)你對(duì)某個(gè) project 有問(wèn)題并想找一個(gè)人說(shuō)明時(shí),怎么找到這個(gè) project 的第一貢獻(xiàn)者就非常有必要了。

rank = shortlog -sn --no-merges

例如:

刪除所有已合并的分支

在提交 PR 之前,我們需要?jiǎng)?chuàng)建一個(gè)本地分支來(lái)提交代碼,時(shí)間久了之后,你就會(huì)發(fā)現(xiàn)有很多已經(jīng)合并到 master 上的分支,一個(gè)一個(gè)刪除這些分支是比較麻煩的事。

當(dāng)這些已經(jīng)合并的分支的數(shù)量很大時(shí),用一個(gè)簡(jiǎn)單的別名來(lái)刪除這些分時(shí)是很方便的。這個(gè)別名會(huì)刪除所有已經(jīng)合并到你當(dāng)前所在分支的分支:

bdm = "!git branch --merged | grep -v '*' | xargs -n 1 git branch -d"

例如:

[alias]# Shortening aliasesco = checkoutcob = checkout -bf = fetch -pc = commitp = pushba = branch -abd = branch -dbD = branch -Ddc = diff --cached# Feature improving aliasesst = status -sba = add -p# Complex aliasesplog = log --graph --pretty='format:%C(red)%d%C(reset) %C(yellow)%h%C(reset) %ar %C(green)%aN%C(reset) %s'tlog = log --stat --since='1 Day Ago' --graph --pretty=oneline --abbrev-commit --date=relativelg = log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commitrank = shortlog -sn --no-mergesbdm = "!git branch --merged | grep -v '*' | xargs -n 1 git branch -d"

相關(guān)文章

  • 有用的git建議
  • Git的奇技淫巧

原文:16 awesome git aliases that you will love

from:?https://github.com/dwqs/blog/issues/3?

總結(jié)

以上是生活随笔為你收集整理的16个不错的 git 别名的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。