站長資訊網
        最全最豐富的資訊網站

        40個適用于Linux管理員和開發人員的git命令(下)

        git CLI提供了大量的git命令,以使開發人員更輕松地進行軟件開發。為了方便讀者,我們的編輯人員概述了一些最有用的命令。因此,請繼續閱讀并按照自己的節奏發現它們。

        40個適用于Linux管理員和開發人員的git命令(下)

        21、將標簽添加到您的項目

        標簽使您可以標記開源項目中的重要事件。開發人員經常使用它們來標記新的復發或錯誤修復。請仔細查看以下git命令,以了解如何使用git將標簽添加到項目中。

        linuxidc@Ubuntu:~/www.linuxidc.com$ git tag 1.0.0 new-linuxidc
        linuxidc@ubuntu:~/www.linuxidc.com$ git tag 1.0.0 new-linuxidc
        fatal: 標簽 ‘1.0.0’ 已存在

        此命令將標簽1.0.0添加到特定的提交。您可以使用以下命令獲取commit-id(new-linuxidc)。

        linuxidc@ubuntu:~/www.linuxidc.com$ git log
        commit 482b4bebada278b29001338411de7c42743065d5 (HEAD -> new-linuxidc, tag: 1.0.0, master)
        Author: linuxidc <root@linuxidc.net>
        Date:  Thu Apr 30 14:21:46 2020 +0800

            Linuxidc Commit

        40個適用于Linux管理員和開發人員的git命令(下)

        使用以下命令將標簽推送到您的遠程倉庫中。

        linuxidc@ubuntu:~/www.linuxidc.com$ git push origin –tags

        您需要明確指定–tags選項。否則,標簽只會添加到您的本地倉庫中,而不會添加到遠程倉庫中。

        22、獲取遠程數據

        您將經常使用的另一個常見git命令是fetch。由于許多原因,它非常有用。首先,訪存僅檢索新數據/引用,而不將它們合并到本地分支。因此,您可以放心,本地倉庫的工作副本將保持安全可靠。

        linuxidc@ubuntu:~/www.linuxidc.com$ git fetch origin

        這是檢查遠程代碼庫最新進度而又不破壞項目自己版本的絕佳方法。一旦確定所有新數據都可以使用,只需將它們合并到本地分支即可。

        23、恢復未提交的更改

        git restore命令允許開發人員恢復其項目中所有未提交的更改。這些是您對項目的工作版本或本地索引中的內容所做的更改。您可以使用此命令來還原工作副本中的更改或索引中的更改,或者同時執行這兩個操作。

        linuxidc@ubuntu:~/www.linuxidc.com$ git restore –staged linuxidc1.py
        linuxidc@ubuntu:~/www.linuxidc.com$ git restore –source=HEAD –staged –worktree linuxidc1.py

        40個適用于Linux管理員和開發人員的git命令(下) 

        第一個命令將還原索引中的文件linuxidc1.py,第二個命令將還原索引和項目的當前工作目錄。

        24、刪除文件

        有時,您可能希望從工作樹或項目索引中完全刪除一些文件。您可以使用git rm命令來執行此操作。但是,此命令不會從您的工作目錄中刪除指定的文件。使用Linux rm命令執行此操作。

        $ git rm *.py
        $ git rm -r dir/
        $ git rm –cached *.py

        第一條命令從工作樹和索引中刪除所有py文件。第二個命令從dir/目錄中刪除所有內容。最后一條命令將僅從索引而不是工作樹中刪除所有py文件。

        25、移動或重命名文件

        您可以使用git移動或重命名文件,就像使用Linux mv命令一樣。

        git mv linuxidc1.py linuxidc11.py

        上面的命令只是執行以下Linux操作。

        $ mv test.py new-test.py
        $ git add new-test.py
        $ rm test.py

        因此,您可以使用git mv命令來避免輸入大量額外的Linux終端命令。

        在git中移動和重命名文件

        26、清理未跟蹤的文件

        未跟蹤的文件是不在git版本控制系統下的文件。在進行大型項目時,您經常會偶然發現此類文件。您可以使用幾種方法刪除它們,包括git reset和git checkout。但是,使用git clean命令是最合適的方法。

        linuxidc@ubuntu:~/www.linuxidc.com$ git clean
        fatal: clean.requireForce 默認為 true 且未提供 -i、-n 或 -f 選項,拒絕執行清理動作

        上面的命令失敗,因為這是在我的系統中配置git的方式。您可以通過添加-n,-i或-f選項來解決此問題。

        linuxidc@ubuntu:~/www.linuxidc.com$ git clean -n

        40個適用于Linux管理員和開發人員的git命令(下)

        27、優化本地倉庫

        我最喜歡的git命令之一是gc。它用于垃圾收集,將幫助您減小本地倉庫的大小。如果您正在處理大量項目,則應經常使用此命令。

        linuxidc@ubuntu:~/www.linuxidc.com$ git gc
        枚舉對象: 10, 完成.
        對象計數中: 100% (10/10), 完成.
        壓縮對象中: 100% (10/10), 完成.
        寫入對象中: 100% (10/10), 完成.
        總共 10 (差異 0),復用 0 (差異 0)

        40個適用于Linux管理員和開發人員的git命令(下)

        git gc命令運行得非常快,并清理了本地倉庫中所有不必要的文件。由于其速度和效率,它是最佳的優化方法之一。您也可以使用–aggressive選項來增加優化。但是,這將需要更多時間才能完成。

        28、存檔本地倉庫

        您可以使用git archive命令輕松地歸檔本地倉庫。它允許開發人員將他們的項目安全地存儲在某個地方。您可以通過網絡傳輸此存檔,也可以將其存儲在Linux文件系統上。

        linuxidc@ubuntu:~/www.linuxidc.com$ git archive –output=test –format=tar master

        40個適用于Linux管理員和開發人員的git命令(下)

        上面的命令將倉庫存儲在名為test的tar文件中。如果需要,可以省略–format選項。在這種情況下,git將嘗試從名稱中推斷出存檔格式。此命令還有更多選項可用。

        29、搜索模式

        在大型項目中工作時,通常需要搜索其他內容。幸運的是,git grep命令使我們能夠在倉庫中搜索特定的模式,并使開發更加容易。它的工作方式與標準Linux grep命令非常相似,具有一些特定于git的功能。

        linuxidc@ubuntu:~/www.linuxidc.com$ git grep -iw ‘import’ master

        此命令在我們的master分支中顯示所有包含“ import”的行。它以不區分大小寫的方式搜索。以下命令將在所有提交和分支中搜索給定的模式。

        linuxidc@ubuntu:~/www.linuxidc.com$ git grep ‘import’ $(git rev-list –all)

        如果您正在協作大型項目,這是最好的git命令之一。

        30、管理工作樹

        開發人員可以在git中使用多個工作樹。當簽出多個項目分支時,這很有用。檢查以下git命令,以了解如何在git中管理工作樹。

        linuxidc@ubuntu:~/www.linuxidc.com$ git worktree list
        linuxidc@ubuntu:~/www.linuxidc.com$ git worktree add new-branch
        linuxidc@ubuntu:~/www.linuxidc.com$ git worktree remove new-branch
        linuxidc@ubuntu:~/www.linuxidc.com$ git worktree prune

        您可以使用第一個命令顯示當前的工作樹。使用第二個命令添加一個新的“鏈接的工作樹”,并使用第三個命令刪除該樹。最后一條命令允許您修剪工作樹信息。

        31、刪除未跟蹤的對象

        有時您可能想刪除不再由git跟蹤的對象。Git提供了一個簡單的命令來執行此操作。git prune命令只會從對象數據庫中刪除未跟蹤的對象,而不會刪除引用本身。

        linuxidc@ubuntu:~/www.linuxidc.com$ git prune –dry-run
        linuxidc@ubuntu:~/www.linuxidc.com$ git prune –verbose –progress

        40個適用于Linux管理員和開發人員的git命令(下)

        第一條命令不會刪除任何內容,只會顯示修剪后會刪除的對象。第二條命令在刪除期間提供詳細的輸出以及進度報告。您可以使用prune命令和git gc命令一起優化倉庫。

        32、打包未歸檔文件

        在git中,包是單個壓縮對象的集合。Git對這些對象應用增量壓縮并將其存儲在單個文件中。它們用于減少Linux文件系統或鏡像系統上的負載。git repack命令允許用戶創建新的包,這些包由不位于現有包內的對象組成。

        linuxidc@ubuntu:~/www.linuxidc.com$ git repack

        40個適用于Linux管理員和開發人員的git命令(下)

        您可以將此命令與gic gc和git prune一起使用,以優化git倉庫。

        33、計算解包的對象數量

        除非解壓縮的對象太多,否則不應經常重新打包對象。git count-objects命令是一種簡單但有用的方法,用于查看解包對象的數量及其消耗的磁盤空間。

        linuxidc@ubuntu:~/www.linuxidc.com$ git count-objects

        使用上面的命令來確定是否應該重新打包git。您可以添加–verbose標志以獲取詳細信息,還可以添加–人類可讀標志以常規方式顯示尺寸。

        34、驗證對象數據庫

        Git最初是作為文件系統開發的。它具有一個稱為fsck的有用命令,其作用與Unix fsck非常相似。您可以使用此命令來驗證連接性并執行對象的完整性檢查。

        linuxidc@ubuntu:~/www.linuxidc.com$ git fsck

        40個適用于Linux管理員和開發人員的git命令(下)

        運行以上命令將顯示在對象數據庫中找到的所有損壞的對象。它是查找丟失或不良對象的最有用的git命令之一。

        35、顯示每次提交的更改

        git whatchanged命令是我們最喜歡的git子命令中的另一個。這是一種查看每個git commit引入到我們項目的更改的簡單但有效的方法。

        linuxidc@ubuntu:~/www.linuxidc.com$ git whatchanged

        40個適用于Linux管理員和開發人員的git命令(下)

        此git命令將使用提交日志和diff輸出顯示信息。總的來說,它的操作與git log命令非常相似。

        36、匯總日志信息

        您還可以使用git shortlog命令查看歷史記錄。該命令的主要思想是將輸出包含在發行公告中。快速瀏覽以下命令以了解其工作原理。

        linuxidc@ubuntu:~/www.linuxidc.com$ git shortlog
        linuxidc@ubuntu:~/www.linuxidc.com$ git shortlog –email –summary

        40個適用于Linux管理員和開發人員的git命令(下)

        添加–email選項將顯示每個作者的電子郵件。該-summary選項會抑制通常輸出,只會顯示提交的數目。

        37、管理配置選項

        git有大量可用的配置選項。您可以使用git config命令查詢,設置或替換各種選項。可以對特定倉庫和全局配置進行更改。

        linuxidc@ubuntu:~/www.linuxidc.com$ git config –list

        40個適用于Linux管理員和開發人員的git命令(下)

        上面的命令將在git中列出所有當前設置的配置選項。您可以輕松添加或刪除新選項。遵循config子命令的幫助頁面以了解如何執行這些任務。

        linuxidc@ubuntu:~/www.linuxidc.com$ git config –help

        38、Git幫助

        git或任何其他Linux終端命令的幫助頁面提供了所有可用選項的摘要信息。當您遇到git問題時,它應該是第一個訪問的地方。快速瀏覽以下命令以了解如何調用git幫助頁面。

        linuxidc@ubuntu:~/www.linuxidc.com$ git help
        linuxidc@ubuntu:~/www.linuxidc.com$ git –help

        因此,您可以使用Unix風格的–help選項或git中內置的help子命令來查詢git幫助頁面。此外,git還提供了有關子命令的幫助頁面。

        linuxidc@ubuntu:~/www.linuxidc.com$ git <command> –help
        linuxidc@ubuntu:~/www.linuxidc.com$ git commit –help

        39、手冊頁

        手冊頁包含有關git版本控制系統及其所有子命令的深入信息。您可以按照以下語法查看它們。

        linuxidc@ubuntu:~/www.linuxidc.com$ man git
        linuxidc@ubuntu:~/www.linuxidc.com$ man git commit

        因此,您也可以像使用幫助頁面一樣查看各個子命令的手冊。

        40、顯示版本信息

        您可以使用以下簡單命令查看系統上已安裝的git版本。由于git在很大程度上隨著時間的推移而發展,因此各種git版本之間存在顯著差異。

        linuxidc@ubuntu:~/www.linuxidc.com$ git –version

        只需使用以上命令即可在您的計算機上獲取特定版本的git。

        總結

        Git憑借其實用的設計和多樣化的功能集,鞏固了其作為事實上的版本控制系統的地位。盡管有一些很好的選擇,例如Mercurial和CVS,但是大量實用的git命令使它比競爭對手更通用。我們的編輯竭盡全力為您概述最實用的命令。希望您已從本指南中獲得了所需的基本見解。如果您對特定命令有疑問,請隨時向我們提問。

        40個適用于Linux管理員和開發人員的git命令(上) http://m.0106606.com/Linux/2020-04/163079.htm

        贊(0)
        分享到: 更多 (0)
        網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
        主站蜘蛛池模板: 韩国三级中文字幕hd久久精品| 精品无码久久久久久尤物| 亚洲精品国产va在线观看蜜芽| 国产精品一区二区不卡| 亚洲国产精品13p| 国产成人精品视频2021| 国产精品亚洲а∨无码播放| 亚洲第一永久AV网站久久精品男人的天堂AV| 一级香蕉精品视频在线播放| 久久99国产精品尤物| 亚洲精品A在线观看| 国亚洲欧美日韩精品| 97久人人做人人妻人人玩精品| 国产国产成人精品久久| 久久久久成人精品无码中文字幕| 热综合一本伊人久久精品| 国产精品 猎奇 另类视频| 久久久国产精品网站| 国产精品国产亚洲精品看不卡| 无码精品一区二区三区在线| 亚洲精品岛国片在线观看| 久久99国产精品成人欧美| 国产成人精品大尺度在线观看| 国内精品一级毛片免费看| 国产成人精品AA毛片| 精品三级AV无码一区| 日产精品一线二线三线芒果| 亚洲精品无码专区久久同性男| 久久亚洲国产精品五月天婷| 久草热8精品视频在线观看| 一本一本久久aa综合精品| 国产精品一区二区久久精品无码| 欧美精品华人在线| 久久精品中文字幕久久| 精品久久久久久| 精品国产91久久久久久久| 国产精品1区2区3区在线播放| 成人伊人精品色XXXX视频| 成人国内精品久久久久一区| 国产网红无码精品视频| 国产精品免费高清在线观看|