git 日誌 十個有用的Git日誌技巧

2021-10-07 23:33:48 字數 3366 閱讀 5969

git 日誌

如果您使用git一段時間,則應該遇到git log。 眾所周知,git log是乙個簡單的命令,可以幫助我們

檢視更改或專案歷史記錄。

即使如此簡單,它仍然是乙個非常強大的工具,它帶有許多選項,可以幫助我們檢視專案更改及其結構。 我們將在本文中看到一些最常用的選項。

gitlog --oneline

此命令可幫助您以更簡潔的方式檢視提交。 它會將每次提交壓縮到一行,並且只有很少的資訊,例如較短的提交雜湊,提交訊息。

這些命令將按給定的時間間隔過濾提交。 例如,– after將僅在給定時間段之後進行提交,而– before將僅在給定時間段之前進行提交。

gitlog --after= "2020-15-05"

上面的命令將僅顯示2023年5月15日之後的提交

gitlog --after= "2020-15-05" --before= "2020-25-05"

上面的命令將僅顯示5月15日至5月25日的提交

您還可以使用以下日期格式

gitlog --after= "yesterday" // shows only commits from yeserday

git log --after= "today" // shows only today commits

git log --before= "10 day ago" // omits last 10 days commits

git log --after= "1 week ago" //show only commits from last week

git log --after= "2 week ago"

git log --after= "2 month ago" // shows only last 2 months commits

gitlog -p

此命令將顯示具有差異更改的日誌。 這樣您就可以知道每次提交中所做的更改。

在上圖中,您可以看到git diff的變化。

gitlog --author= "srebalaji"

上面的命令將過濾掉特定物件所做的提交

作者。 請注意,git按正規表示式模式過濾掉。 所以不用擔心

有關確切名稱匹配或區分大小寫的資訊。

git日誌可以採用多個選項,因此您可以根據需要組合選項。 例如,

gitlog --after= "1 week ago" --author= "srebalji" -p

上面的命令將過濾各自作者過去一周的提交,並顯示差異更改。

有時,您需要通過日誌訊息過濾提交。 git接受乙個

regex模式以搜尋日誌訊息並顯示所有

匹配的提交。

gitlog --grep= "issue-43560"

上面的命令將按各自的模式過濾提交。 並且請記住,預設情況下它區分大小寫。

要使搜尋不區分大小寫,可以傳遞-i引數

gitlog -i --grep= "issue-43560"

下面的命令正在使用正規表示式模式搜尋,並將搜尋兩個問題id。

gitlog -i --grep= "issue-43560\|issue-89786"

有時,您需要進行所有已影響某些特定檔案的提交更改。 這將在許多地方出現。

gitlog main.rb

該命令將過濾對相應檔案進行更改的提交。

您還可以將多個檔案傳遞給它。

gitlog main.rb search.rb login.rb

您可以看到我已經傳遞了三個檔案進行過濾。

請記住,您還可以傳遞多個選項。

gitlog -i --grep= "fix " main.rb search.rb

該命令將過濾出對指定檔案所做的提交更改,還將通過給定的搜尋模式匹配日誌訊息。

您可能需要在提交歷史中新增的源**中搜尋特定的字串。 這可以通過

gitlog -s "function login()"

上面的命令將搜尋字串「 function login()」。 預設情況下,區分大小寫。

您可以通過新增-i使其不區分大小寫要檢視內容,您可以檢視差異更改。

gitlog -i -s "function login()" -p

此命令有助於我們了解對當前分支所做的合併。

gitlog --merges

上面的命令將僅顯示當前分支中的合併提交。 而已。

我們已經在以前的問題之一中看到了此命令。

gitlog master..develop

該命令將幫助您顯示來自development的所有提交,但是

在master分支中不存在。 這樣,您可以知道

許多新的提交被新增到了不存在的開發分支中

主分支。 並確保您在

比較之前是本地的。

git還提供了用於自定義日誌訊息格式的選項。 您可以檢視自定義漂亮選項以獲得更多選項。

例如,

gitlog --pretty=format: "%cred%an - %ar%n %cblue %h -%cgreen %s %n"

您可以在上圖中看到提交日誌是自定義的

格式化。 這很容易,如果您想檢視,它會派上用場

僅日誌的特定詳細資訊。

而已。 希望你學到新東西:)

謝謝您的閱讀:) :)

該帖子最初發布在時事通訊gitbetter中如果您有興趣公升級git中的遊戲,可以訂閱它。

先前發布在

翻譯自:

git 日誌

十個基本的Git命令

是乙個面向individual developer的簡單git教程,講解了git的10個常用命令。1 建立乙個新的git repository git init 注意 在執行這個命令之前,需要cd到你的工程根目錄下,因為該命令是在當前目錄下建立乙個空的repository。2 往git reposi...

git學習日誌

2 每個機器都必須自報家門 git config global user.name your name git config global user.email email example.com 3 建倉庫 cd learngit git init initialized empty git re...

Git日誌壓縮

在日常功能研發時,可能會在本地倉庫commit多次,但這些commit對於遠端來說,當做乙個原子操作push是最合適的,此時應該怎麼做?1.commit amend commit時就合併到最後一次commit中,命令 git commit amend此時,當前commit的內容會與上一次commit...