你可能不知道的20個Git命令,但真的很實(shí)用
20個實(shí)用Git命令,讓你的開發(fā)更高效
Git的強(qiáng)大遠(yuǎn)超我們?nèi)粘J褂玫墓δ埽@里介紹20個鮮為人知但極具實(shí)用價值的命令,它們能提升你的開發(fā)體驗(yàn),展示你的技術(shù)實(shí)力,甚至幫助你輕松應(yīng)對git面試。讓我們深入了解一下這些隱藏的寶藏:
- 網(wǎng)頁版git: 使用git instaweb,即時瀏覽本地存儲庫的web界面,方便管理。
- Git筆記: 通過git notes功能,為提交添加額外信息,支持靈活編輯。
- 二進(jìn)制搜索: git bisect,高效定位引入錯誤的提交,調(diào)試時的得力助手。
- Git grep: 在倉庫中搜索代碼、文件等,快速定位內(nèi)容。
- 存檔和子模塊: git archive合并存儲庫到文件,git submodule引入外部倉庫。
- 錯誤報告: git bugreport生成包含系統(tǒng)信息的錯誤報告,方便他人復(fù)現(xiàn)問題。
- git fsck: 檢查并修復(fù)存儲庫對象,確保數(shù)據(jù)完整。
- 格式化空格: git stripspace調(diào)整文件格式,保持代碼整潔。
- 代碼差異: git diff比較代碼,查看版本間的差異和歷史。
- Git鉤子: 自動化常見任務(wù),如代碼檢查和提交操作。
- git blame: 查看代碼行的作者和修改歷史。
- Git LFS: 大文件管理,加速倉庫操作。
- 垃圾收集: git gc優(yōu)化存儲庫,釋放磁盤空間。
- git show: 查看任何Git對象,包括提交、標(biāo)簽和blob。
- git describe: 生成可讀的版本標(biāo)識,便于溝通。
- Git標(biāo)簽: 標(biāo)記特定點(diǎn),方便版本控制和交流。
- git reflog: 記錄倉庫更新歷史,找回丟失的提交。
- git log: 強(qiáng)大的日志分析工具,支持過濾和可視化。
- cherry-pick: 從其他分支選取并應(yīng)用提交。
- git switch: 簡化版本切換,處理分支管理。
- git standup: 用git記錄日常工作,便于匯報。
- 額外擴(kuò)展: git-extras和GitHub CLI等插件,增強(qiáng)Git功能。
通過掌握這些實(shí)用命令,你的開發(fā)效率和代碼管理將得到顯著提升。學(xué)習(xí)這些技巧,讓你在項(xiàng)目開發(fā)中游刃有余!
介紹git bash命令(init、add、commit -v)
不會影響文件本身。通過實(shí)踐發(fā)現(xiàn),在Windows 10系統(tǒng)和Git 2.19.1版本中,即使不明確指定-v參數(shù),提交時同樣會顯示詳細(xì)diff信息。這可能是因?yàn)樾掳姹疽褜⒃搮?shù)默認(rèn)啟用。阮一峰老師的總結(jié)圖片能夠幫助理解和記憶這些命令。若需深入了解,請查閱阮一峰老師的常用Git命令清單。
CentOS下git命令行操作圖文教程
之前使用Github都是使用IDE中的一些git插件,一直想學(xué)學(xué)git命令行的操作,我是在我CentOS做的,Windows可以安裝git shell (1) 新建一個文件夾,做測試 (2)將此目錄變?yōu)镚it可管理的倉庫git init (3)目錄下會多一個.git的文件,使用ls命令查看不到,因?yàn)樗悄J(rèn)隱藏的,可以使用ls -ah (4)...
git常用命令及提交代碼相關(guān)操作
為了管理忽略文件,可以創(chuàng)建.gitignore文件,將不需要跟蹤的文件或文件類型添加其中。git常用命令包括但不限于克隆、添加、提交、拉取和推送等。想要深入了解,可以參考一些推薦的博客資源。遇到git clone失敗的情況,有兩步可能的解決方案:首先,確保網(wǎng)絡(luò)連接正常;其次,檢查遠(yuǎn)程倉庫的URL是否正確,或者是否...
一個命令巧妙查看git版本演變史
借助 --all 參數(shù),可以列出所有分支的 commit 歷史,并以圖形形式展示。如查看最近3個全部分支的演進(jìn)歷史,命令如下:git log --all -n3 --graph 若指定分支,例如 temp,查看其 commit 歷史,命令為:git log --all temp -n3 結(jié)果顯示仍為所有分支的 commit 歷史,而非 temp 分支。若不使用 -...
【譯】10 個有用的 git log 技巧
搜索源代碼中特定字符串的提交記錄,通過`git log`命令與字符串匹配,使用`-i`參數(shù)可使搜索不區(qū)分大小寫。查看內(nèi)容可通過顯示差異變更來實(shí)現(xiàn)。只顯示合并提交,了解當(dāng)前分支的合并情況,以`git log`命令查看當(dāng)前分支的合并記錄。顯示兩個分支間的差異,使用`git log`命令比較`develop`和`master`分支,...
Git 神奇命令,統(tǒng)計(jì)每個人的代碼行數(shù)
想知道團(tuán)隊(duì)成員的代碼貢獻(xiàn)量嗎?只需一行命令,輕松獲取。通過命令可以明確看出每個人增加的代碼數(shù)、刪除量以及總量,一目了然。若要查看特定成員的代碼行數(shù),使用特定命令即可。利用Git神奇命令,團(tuán)隊(duì)成員的代碼貢獻(xiàn)情況清晰可見,誰在努力,誰在劃水,一清二楚。了解團(tuán)隊(duì)成員的代碼貢獻(xiàn)情況,有助于提升...
只會git log? 其實(shí) git 還有兩個好用的 log 命令
探索 Git 命令中被忽略的寶藏:git shortlog 和 git reflog 除了我們熟知的 git log 命令,Git 還有兩顆隱藏的寶石:git shortlog 和 git reflog。它們在日常工作中或許不常被提及,但其功能卻極為實(shí)用。讓我們先從 git log 開始。作為查看 commit 歷史的常用工具,git log 能夠幫助我們追溯代碼的...
百分之九十八的人不知道git操作如何查看所有版本
Git源于Linux內(nèi)核開發(fā)的需求,由Linus Torvalds開源,旨在提升代碼管理的效率。盡管它功能眾多,本文重點(diǎn)聚焦于查看版本信息的實(shí)用操作。對于OpenWrt源碼中的多個分支和版本,很多人可能不清楚如何查看每個分支的具體版本歷史。要查看所有分支,使用命令:git branch -a,這將展示所有分支,包括本地和遠(yuǎn)程的。而...
git命令如何撤回操作
硬撤回(所有提交):git reset --hard HEAD~:將 HEAD 指針重置到特定提交。git push -f origin HEAD~:強(qiáng)制將 HEAD 指針更新到遠(yuǎn)程倉庫。注意事項(xiàng):撤回操作是不可逆的。撤回已推送到遠(yuǎn)程倉庫的更改可能會影響其他協(xié)作者。使用硬撤回時,需要確保與遠(yuǎn)程倉庫同步,否則可能會丟失更改。
Git命令:git pull & git fetch
當(dāng)需要在本地倉庫獲取遠(yuǎn)程倉庫的最新更新時,Git提供了兩個常用命令:git pull和git fetch。它們的用途和操作過程有所不同。首先,理解Git的基本結(jié)構(gòu),本地倉庫包含本地分支的commit ID以及跟蹤的遠(yuǎn)程倉庫分支。git pull實(shí)際上是兩步操作的結(jié)合:fetch(獲取遠(yuǎn)程更新)+ merge(將遠(yuǎn)程分支合并到本地分支...
相關(guān)評說:
鎮(zhèn)平縣盤形: ______ linux下git的使用方法前言 git是linux下的版本控制工具.我因?yàn)闆]有大型工程,也沒有服務(wù)器,所以基本上最有用的push等等就用不上了.我的程序是一個人開發(fā)的,我現(xiàn)在想標(biāo)記我的版本,并且可以在版本之間切換來切換去,有一個人建議使...
鎮(zhèn)平縣盤形: ______ 增加內(nèi)容跟蹤信息:git add 為了簡明起見,我們創(chuàng)建兩個文件作為練習(xí): $echo"Helloworld">hello$echo"SnakeZero">snake我們再用 git add 命令將這兩個文件加入到版本庫文件索引當(dāng)中: $git add hello snakegit add 實(shí)際上是個腳本命令...
鎮(zhèn)平縣盤形: ______ 相信當(dāng)你使用Git有一段時間之后你漸漸發(fā)現(xiàn)git add 和 git commit 是使用得如此之頻繁,要是能把它合并成一步或一條命令操作就好了.有了這個想法之后,我們再找到網(wǎng)上找類似的解決方案,似乎之有用命令別名之類的方法,可搭上點(diǎn)邊.其...
鎮(zhèn)平縣盤形: ______ git clone是把整個git項(xiàng)目拷貝下來,包括里面的日志信息,git項(xiàng)目里的分支,你也可以直接切換、使用里面的分支等等.clone是本地沒有repository時,將遠(yuǎn)程repository整個下載過來.pull是本地有repository時,將遠(yuǎn)程repository里新的commit數(shù)...
鎮(zhèn)平縣盤形: ______ git init就是git庫初始化的命令.如你所說,在任何一個文件夾下執(zhí)行就是初始化這個文件夾,此時執(zhí)行g(shù)it status,可以看到文件夾下的所有文件都變成未被跟蹤的文件.
鎮(zhèn)平縣盤形: ______ git如何進(jìn)行遠(yuǎn)程分支切換 git上查看遠(yuǎn)程分支命令: git branch -a 例如: 然后我想切換到daily/1.0.0遠(yuǎn)程分支:前提是必須要創(chuàng)建一個本地分支,并讓它和遠(yuǎn)程分支進(jìn)行關(guān)聯(lián),git checkout origin/daily/1.0.0 -b local_branch_ljs , 如果在運(yùn)行此命令之前有文件沒有提交的,而你又想取消本地文件的修改,可以先運(yùn)行g(shù)it chekout . 命令,然后再執(zhí)行(注:local_branch_ljs是你自己新創(chuàng)建的本地分支名). 切換成功后顯示如下:
鎮(zhèn)平縣盤形: ______ 1.git merge-base A B可以看到AB兩個branch最近的一個共同的parent commit,如果B是你關(guān)注的branch,那B上第一個commit(這里指parent commit在B上的第一個child commit)的author或者committer很可能就是創(chuàng)建B的人.但只是“很可能...
鎮(zhèn)平縣盤形: ______ 在git中查看歷史的命令主要是git log,要查看某個文件的修改歷史可以這樣:$ git log -- begin.txt 可以添加不同的選項(xiàng)讓輸出的內(nèi)容或格式有所不同.$ git log -p -- begin.txt-p 選項(xiàng)可以輸出每次提交中的diff, 但個人感覺會把輸出搞得很長、很亂,不容易找到重點(diǎn).個人比較喜歡的方式是:$ git log --pretty=oneline -- filename 在log 命令中加入 --pretty=oneline 選項(xiàng)會讓結(jié)果看起來清爽一些,但是只能看到comments,看不到提交的用戶和日期.
鎮(zhèn)平縣盤形: ______ git命令是用來管理文件的程序,它十分類似DOS下的Norton Commander,具有互動式操作界面.它的操作方法和Norton Commander幾乎一樣:git pull:從其他的版本庫(既可以是遠(yuǎn)程的也可以是本地的)將代碼更新到本地,例如:'git pull ...