1、初始化倉庫
git init
2、將檔案新增到倉庫
git add 檔名 # 將工作區的某個檔案新增到暫存區
git add -u # 新增所有被tracked檔案中被修改或刪除的檔案資訊到暫存區,不處理untracked的檔案
git add -a # 新增所有被tracked檔案中被修改或刪除的檔案資訊到暫存區,包括untracked的檔案
git add . # 將當前工作區的所有檔案都加入暫存區
git add -i # 進入互動介面模式,按需新增檔案到快取區
3、將暫存區檔案提交到本地倉庫git commit -m "提交說明" # 將暫存區內容提交到本地倉庫
git commit -a -m "提交說明" # 跳過快取區操作,直接把工作區內容提交到本地倉庫
4、檢視倉庫當前狀態
git status
5、比較檔案異同
git diff # 工作區與暫存區的差異
git diff 分支名 #工作區與某分支的差異,遠端分支這樣寫:remotes/origin/分支名
git diff head # 工作區與head指標指向的內容差異
git diff 提交id 檔案路徑 # 工作區某檔案當前版本與歷史版本的差異
git diff --stage # 工作區檔案與上次提交的差異(1.6 版本前用 --cached)
git diff 版本tag # 檢視從某個版本後都改動內容
git diff 分支a 分支b # 比較從分支a和分支b的差異(也支援比較兩個tag)
git diff 分支a...分支b # 比較兩分支在分開後各自的改動
# 另外:如果只想統計哪些檔案被改動,多少行被改動,可以新增 --stat 引數
6、檢視歷史記錄git log # 檢視所有commit記錄(sha-a校驗和,作者名稱,郵箱,提交時間,提交說明)
git log -p -次數 # 檢視最近多少次的提交記錄
git log --stat # 簡略顯示每次提交的內容更改
git log --name-only # 僅顯示已修改的檔案清單
git log --name-status # 顯示新增,修改,刪除的檔案清單
git log --oneline # 讓提交記錄以精簡的一行輸出
git log –graph –all --online # 圖形展示分支的合併歷史
git log --author=作者 # 查詢作者的提交記錄(和grep同時使用要加乙個--all--match引數)
git log --grep=過濾資訊 # 列出提交資訊中包含過濾資訊的提交記錄
git log -s查詢內容 # 和--grep類似,s和查詢內容間沒有空格
git log filename # 檢視某檔案的修改記錄,找背鍋專用
7、**回滾git reset head^ # 恢復成上次提交的版本
git reset head^^ # 恢復成上上次提交的版本,就是多個^,以此類推或用~次數
git reflog
git reset --hard 版本號
--soft:只是改變head指標指向,快取區和工作區不變;
--mixed:修改head指標指向,暫存區內容丟失,工作區不變;
--hard:修改head指標指向,暫存區內容丟失,工作區恢復以前狀態;
8、同步遠端倉庫
git push -u origin master
9、刪除版本庫檔案
git rm 檔名
10、版本庫里的版本替換工作區的版本
git checkout -- test.txt
11、本地倉庫內容推送到遠端倉庫
git remote add origin [email protected]:帳號名/倉庫名.git
12、從遠端倉庫轉殖專案到本地
git clone [email protected]:git帳號名/倉庫名.git
13、建立分支
git checkout -b dev
-b表示建立並切換分支
上面一條命令相當於一面的二條:
git branch dev //建立分支
git checkout dev //切換分支
14、檢視分支
git branch
15、合併分支
git merge dev
# 用於合併指定分支到當前分支
git merge --no-ff -m "merge with no-ff" dev
# 加上--no-ff引數就可以用普通模式合併,合併後的歷史有分支,能看出來曾經做過合併
16、刪除分支
git branch -d dev
17、檢視分支合併圖
git log --graph --pretty=oneline --abbrev-commit
18、檢視遠端庫資訊
git remote
# -v 顯示更詳細的資訊
19、git相關配置# 安裝完git後第一件要做的事,設定使用者資訊(global可換成local在單獨專案生效):
git config --global user.name "使用者名稱" # 設定使用者名稱
git config --global user.email "使用者郵箱" #設定郵箱
git config --global user.name # 檢視使用者名稱是否配置成功
git config --global user.email # 檢視郵箱是否配置
# 其他檢視配置相關
git config --global --list # 檢視全域性設定相關引數列表
git config --local --list # 檢視本地設定相關引數列表
git config --system --list # 檢視系統配置引數列表
git config --list # 檢視所有git的配置(全域性+本地+系統)
git config --global color.ui true //顯示git相關顏色
20、撤消某次提交git revert head # 撤銷最近的乙個提交
git revert 版本號 # 撤銷某次commit
21、拉取遠端分支到本地倉庫
git checkout -b 本地分支 遠端分支 # 會在本地新建分支,並自動切換到該分支
git fetch origin 遠端分支:本地分支 # 會在本地新建分支,但不會自動切換,還需checkout
git branch --set-upstream 本地分支 遠端分支 # 建立本地分支與遠端分支的鏈結
22、標籤命令git tag 標籤 //打標籤命令,預設為head
git tag //顯示所有標籤
git tag 標籤 �版本號 //給某個commit版本新增標籤
git show 標籤 //顯示某個標籤的詳細資訊
23、同步遠端倉庫更新
git fetch origin master
git fetch比git pull更加安全
常用命令 Git 常用命令大全
安裝教程可參照 廖雪峰老師的安裝教程。git config 在git中,使用git config 命令來配置 git 的配置檔案,git配置級別主要有3類 1 倉庫級別 local 本地 git 倉庫級別配置檔案,作用於當前倉庫。優先順序最高 2 使用者級別 global,全域性配置檔案,作用於所有...
git 常用命令
檢視是否存在檔案需要上傳 git status git add git commit m 建立遠端倉庫 git remote add origin 116.255.146.153 ruby cd work daily project.git 更新git fetch 116.255.146.153 r...
git常用命令
詳細 1,git log p 命令來顯示每一次提交與其父節點提交內容之間快照的差異。2,為了檢視載入 staged 而並未提交 not committed 的內容差異,可以使用 git diff stage 命令 在git 1.6之前的版本中,使用 cached 適應情形 在執行git commit...