Git常用操作命令

2021-10-10 04:29:10 字數 4660 閱讀 1012

git init[初始化乙個本地的git倉庫,自己建立乙個空的資料夾用來作為自己的git本地倉庫]

git add[新增單個檔案]

git add --a[新增所有檔案]

git status[檢視當前工作區中的狀態]

git commit -m "提交備註資訊"[向自己的工作區提交修改]

git log[檢視提交歷史]

git log --pretty=oneline[簡化log資訊]

git log -1[檢視最近一次的commit日誌資訊]

git log -p -1[檢視最近一次的commit日誌資訊,並列出不同的內容]

git log --stat[檢視所有的commit日誌資訊,並列出所有檔案的修改行數(不顯示具體的改動內容)]

git log --author=test[檢視test推送的所有commit日誌資訊]

git log --name-only[僅在提交資訊後顯示已修改的檔案清單。]

git log --name-status[列出commit中檔案的新增、修改、刪除的檔案清單。]

git log --since=1.days[當前時間之前1天的commit日誌資訊,也可以使用after]

git log --until=1.days[前1天到最初的所有commit日誌資訊,也可以使用before]

git log master ^dev[檢視master分支有,dev分支沒有的commit日誌資訊]

git log dev ^master[檢視dev分支有,master分支沒有的commit日誌資訊]

git reset --hard head^[回退到上乙個版本]

git reset --hard[回退到指定的版本

git diff head --[檢視工作區(存放已經新增的檔案的區域)和版本庫裡面最新版本的區別]

git blame 《檔名》[檢視檔案具體的修改歷史,每次的commit id 和提交的內容]

git reflog[檢視自己執行的命令歷史記錄]

git checkout --[丟棄工作區的修改,讓這個檔案回到最近一次git commit或git add時的狀態]

這裡需要注意命令中的--如果漏寫,則變成了切換分支的命令,在下面有講到

git checkout[從指定commit中檢出指定路徑的檔案]

git rm[確定要從git倉庫中刪除的檔案,先執行此命令,在執行git commit

git checkout -b dev[建立dev分支,並切換到dev分支上]

這裡相當於執行了git branch devgit checkout dev兩條命令

git branch[檢視當前分支]

git checkout 《分支名稱》[切換分支]

git merge 《分支名稱》[將指定的分支內容合併到當前分支]

git branch -d 《分支名稱》[刪除指定分支]

多分支協作有很多好處,一般自己的master分支是與伺服器倉庫保持一致的,並且要保證是穩定的,是最後要push的,平時自己開發可以建立乙個dev分支,功能都開發完畢測試通過之後,

再將dev分支的內容合併到master分支上;平時在bug修改的時候,也可以通過不同的bug建立不同的分支來工作,這樣**互不影響,都能保證正常執行,修改完畢之

後,將相應的bug分支合併到master分支上,並將那個bug分支刪除即可,這樣能時刻保證master中的**是能正常執行的**

git log --graph[可以檢視分支合併圖]

stash可以有多個,後面加上具體的stash名稱可以對指定的stash進行操作,通過git stash list可以檢視所有的stash

git stash[儲存工作區的所有內容,臨時有任務需要處理,但是暫時不想提交的檔案,可以先儲存起來(內容沒有提交),然後切換到其他分支進行處理]

git stash list[檢視儲存的工作現場,可以有多個]

git stash drop[刪除stash中儲存的內容]

git stash pop[恢復工作區並刪除之前儲存的stash中的內容]

這裡需要注意,要現將自己的ssh公鑰新增到github或者碼雲上,然後才能執行與遠端倉庫相關的操作

包括從遠端倉庫clone專案下來也需要新增ssh公鑰,具體的生成的命令可以使用,ssh-keygen -t rsa -c "[email protected]"

git remote add 《別名》 《遠端倉庫位址》[新增遠端倉庫,一般遠端倉庫的別名都使用origin,也可以指定其他的名稱,方便新增多個遠端倉庫]

git push -u 《遠端倉庫別名》 《本地當前分支(一般就是master分支)>[第一次向空的遠端倉庫push**時候,使用該命令,可以把本地分支內容推送到遠端倉庫,並且將本地分支與遠端master分支關聯]

git push 《遠端倉庫別名》 master[以後push**,就可以直接使用該命令,將本地master分支的內容推送到遠端倉庫中]

git push 《遠端分支別名》 《本地分支名稱》:《遠端分支名稱》[將本地的指定分支推送到遠端倉庫(一般會是origin)上作為遠端分支,如果遠端分支已存在則會自動合併,如果不存在,則會在遠端建立乙個遠端分支]

git clone 《遠端倉庫位址》[從遠端倉庫複製專案**到本地,想要學習開源專案的,可以通過該命令複製自己喜歡的專案到本地,檢視原始碼並學習原始碼]

git pull 《遠端倉庫別名》 《遠端分枝》[從遠端倉庫拉取指定分支最新的**到當前分支]

git pull 《遠端倉庫別名》 《遠端分枝》:《本地分支名稱》[從遠端倉庫拉取指定分支最新的**到指定分支]

以下兩條命令與git pull有相同的作用,但是更安全,可以自己選擇是否要合併到本地分支

git fetch 《遠端倉庫別名》 《遠端分支》:《本地分支名稱》[獲取遠端指定分支最新的**庫並在本地建立乙個分支]

git merge 《本地分支》[將建立的分支與當前分支合併,可以先執行git diff 《本地分支》檢視具體的修改,自己決定是否需要合併分支]

git config --global alias.st status[為git status配置別名,以後就可以直接使用git st來達到同樣的效果]

git config --global alias.co checkout[為git checkout配置別名,以後就可以直接使用git co來達到同樣的效果]

git config --global alias.ci commit[為git commit配置別名,以後就可以直接使用git ci來達到同樣的效果]

git config --global alias.br branch[為git branch配置別名,以後就可以直接使用git br來達到同樣的效果]

git config --global alias.lg "log --color --graph --pretty=format:'%cred%h%creset -%c(yellow)%d%creset %s %cgreen(%cr) %c(bold blue)%creset' --abbrev-commit"

[格式化處理一下日誌顯示,讓檢視日誌更清晰直觀]

引用 廖雪峰老師的

Git常用操作命令

git常用操作命令收集 1 遠端倉庫相關命令 檢出倉庫 git clone git 檢視遠端倉庫 git remote v 新增遠端倉庫 git remote add name url 刪除遠端倉庫 git remote rm name 修改遠端倉庫 git remote set url push ...

Git常用操作命令

git常用操作命令收集 1 遠端倉庫相關命令 檢出倉庫 git clone git 檢視遠端倉庫 git remote v 新增遠端倉庫 git remote add name url 刪除遠端倉庫 git remote rm name 修改遠端倉庫 git remote set url push ...

Git常用操作命令

git常用操作命令收集 1 遠端倉庫相關命令 檢出倉庫 git clone git 檢視遠端倉庫 git remote v 新增遠端倉庫 git remote add name url 刪除遠端倉庫 git remote rm name 修改遠端倉庫 git remote set url push ...