git常用命令
一.簡介
日常開發中記錄經常使用的git命令,方便平時使用。
1.git暫存管理
git stash # 暫存 git stash list # 列所有stash git stash apply # 恢復暫存的內容 git stash drop # 刪除暫存區
2.git遠端倉庫管理
git remote -v # 檢視遠端伺服器地址和倉庫名稱 git checkout -b yalez_reg origin/yalez_reg 拉取線上分支繫結到本地分支 git clone https://git.coding.net/yalezhou/study.git -b yalez_reg #拉取指定分支 git remote show origin # 檢視遠端伺服器倉庫狀態 git remote add origin git@ github:robbin/robbin_site.git # 新增遠端倉庫地址 git remote set-url origin git@ github.com:robbin/robbin_site.git # 設定遠端倉庫地址(用於修改遠端倉庫地址) git remote rm <repository> # 刪除遠端倉庫
3.檢視提交記錄,退出git log在英文條件按Q
git log <file> # 檢視該檔案每次提交記錄 git log -p <file> # 檢視每次詳細修改內容的diff git log -p -2 # 檢視最近兩次詳細修改內容的diff git log --stat #檢視提交統計資訊 git reflog #檢視所有分支的所有提交記錄
4.檢視檔案diff
git diff <file> # 比較當前檔案和暫存區檔案差異 git diff <id1> <id2> # 比較兩次提交之間的差異 git diff <branch1>..<branch2> # 在兩個分支之間比較
5.檢視、新增、提交、刪除、找回,重置修改檔案
git help <command> # 顯示command的 git add <file> # 將工作檔案修改提交到本地暫存區 git add . # 將所有修改過的工作檔案提交暫存區 git commit -m 'first commit' #提交本次暫存區內容 git rm <file> # 從版本庫中刪除檔案 git rm <file> --cached # 從版本庫中刪除檔案,但不刪除檔案 git reset <file> # 從暫存區恢復到工作檔案 git reset -- . # 從暫存區恢復到工作檔案 git reset --hard # 恢復最近一次提交過的狀態,即放棄上次提交後的所有本地修改(包括暫存區也恢復) git checkout -- <file> # 恢復最近一次提交過的狀態,即放棄上次提交後的對應檔案本地修改(暫存區不能恢復) git ci <file> git ci . git ci -a # 將git add, git rm和git ci等操作都合併在一起 git revert <$id> # 恢復某次提交的狀態,恢復動作本身也建立次提交物件 git revert HEAD # 恢復最後一次提交的狀態,之後會進入vim編輯頁面按:q退出即可
6.合併分支
git checkout master #切換到master分支 git merge dev #把dev中的內容合併到master git push #把dev內合併內容提交到遠端分支
7.新建專案並提交
1.git init 2.git add . 3.git commit -m "初始化"-------以上3步只是本地提交 4.git remote add origin [email protected]:guoqiangliu/push_work.git(需要提前建好工程) 5.git branch --set-upstream-to=origin/mastermaster #繫結本地分支與遠端分支 #接下來可以有以下幾種方式 方式一:強制推送到遠端分支(會覆蓋線上分支內容) 6.git push -f 方式二:合併線上分支,不會覆蓋線上分支內容 5.git pull --allow-unrelated-histories 6.git push
8.提交程式碼
通常我們提交git的時候都是
git add . git commit -m "some str" git push
這三大步,而實際上,你只需要兩條命令就夠了,除非有新的檔案要被新增進去。
git commit -am "some str" git push
9.衝突合併
方式一:
git add . git commit -m "some str" git push git pull #此時會出現合併後衝突的檔案,手動修改檔案再次提交即可 git add . git commit -m "some str" git push
方式二:
git stash drop # 刪除原來暫存區 git stash git pull git stash apply #此時會出現合併後衝突的檔案,手動修改檔案再次提交即可 git add . git commit -m "some str" git push
10.分支操作
git branch -a #檢視分支 git branch test #在本地建立名字叫test的分支 git push origin test:test #將本地test分支推到遠端test分支