常用git命令
git remote - 管理遠端分支
#只顯示遠端倉庫名git remote
#使用-v 選項,可以看到遠端倉庫的**
git remote -v
#新增主機名,可以檢視遠端倉庫詳細資訊
git remote show origin
#用於新增遠端倉庫
git remote add 《倉庫名》 《**》
#修改倉庫名
git remote rename 《原倉庫名》 《新倉庫名》
#刪除倉庫
git remote rm 《主機名》
示例git pull/fetch - 拉取遠端倉庫最新改動
#取回遠端倉庫的所有更新git fetch 《遠端倉庫》
#取回指定倉庫的指定分支
git fetch 《遠端倉庫》 《分支名》
git pull
git branch - 分支操作
#以當前分支為根基,建立新的分支,不會切換到新的分支git branch 《新分支》
#以當前分支為根基,建立新分支並切換到新分支
git checkout -b 《新分支》
#檢視遠端分支
git branch -r
#檢視所有分支 * 代表當前所在分支
git branch -a
#如果刪除分支沒有合併到當前分支,刪除會失敗
#可以用git branch --merged和git branch --no-merged檢視
git branch -d 《分支名》
#強制刪除
git branch -d 《分支名》
#刪除遠端分支
git push origin --delete 《分支》
合併合併有兩個命令可以使用,分別是git merge和git rebase
git merge - 合併
#把分支合併到當前分支git merge 《被合併的分支》
#合併衝突解決
git add 《衝突的檔案》
git rebase - 變基
#把當前分支的根基變為新根基git rebase 《新基》
#衝突git rebase --continue
#取出 client 分支,找出處於 client 分支和 server 分支的共同祖先之後的修改,然 後把它們在 master 分支上重演一遍
git rebase --onto master server client
示例比較
這兩個命令都是把分支合併到當前分支,只不過乙個是合併,乙個是首先變基再合併,變基使的提交歷史更加整潔。但是一般推薦使用git merge即可,防止帶來不必要的麻煩。
git merge
是三方合併,如下例c2、c3、c4合併
git rebase是變換根基,就是把c2->c4的變更,在c3在應用一次,把c4的根基變為c3,然後移動master指標即可,所以更快,但是不要對在你的倉庫外有副本的分支執行變基。
git diff - 檢視變更
# 工作區和暫存區的差異git diff 《檔名》
#暫存區和本地倉庫的差異
git diff --cached 《檔名》
#工作區和本地倉庫的差異
git diff 《檔名》
#比較任意兩次提交的差異
git diff
示例
# 比較a.txt本地倉庫和工作目錄的差異git diff head a.txt
# 比較head和head~2的提交差異
git diff head head~2
git log - 檢視提交歷史
# -p,用來顯示每次提交的內容差異# 加上 -2 ,只顯示最近的兩次提交
git log -p -2
#選項在每次提交的下面列出額所有被修改過的檔案、有多少檔案被修改了以及被修改 過的檔案的哪些行被移除或是新增了
git log --stat
#自定義輸出格式
git log --pretty=format
git log --pretty=format:"%h - %an, %ar : %s"
#輸出的sha-1值縮寫,並在一行輸出
git log --abbrev-commit --oneline
#根據提交者名字查詢
git log --author=huan.liu10
#根據日期過濾
git log --after="2014-7-1" --before="2014-7-4"
#根據提交資訊過濾
git log --grep=刪除
#根據檔案過濾,只顯示針對某個檔案改動的記錄
git log -- a.txt b.txt
#根據內容搜尋,檢視某個內容的變動記錄
git log -saaaaaaaaaaa --oneline
引用日誌,可以檢視所有提交歷史,包括刪除的,可以用來恢復
git reflog
git show - 檢視提交詳細內容
# 顯示head的提交日誌git show head
# 顯示head上乙個版本提交的日誌
git show head^
git commit - 提交
#合併上一次提交或者重新編輯上一次提交,只有一次提交記錄git commit --amend
git reset - 恢復/撤銷
#撤銷commit,從本地倉庫到暫存區,不會丟失資料git reset --soft #撤銷暫存區,從暫存區到工作目錄,不會丟失資料
git reset 《檔名》
#撤銷commit,從本地倉庫到工作目錄,會丟失資料,如果想恢復丟失commit,使用git reflog
git reset --hard
git checkout - 切換分支/撤銷修改
#切換分支git checkout
#使用本地倉庫的檔案內容覆蓋工作目錄內容,也就是撤銷對檔案修改
git checkout -- 《檔名》
git stash - 暫存
當不得不切到另外乙個分支,但是又不想提交時使用
# 暫存工作目錄和暫存區git stash
#檢視暫存列表
git stash list
#不會刪除暫存記錄
#會刪除暫存記錄
git stash pop --index
常用Git命令
下面是我在開發中常用的git命令 1.配置git git config global add user.email git config global add user.name 2.建立新的專案 git init git add git commit a m git remote add orig...
常用Git命令
附上一些git的常見命令 gitremote add origin git github.com myaccount myproject.git git push u origin master gitinit 建立repository git 命令 help 檢視幫助命令 touchfilenam...
常用Git命令
建立管理倉庫 git initadd和commit git add readme.txt git commit m wrote a readme file 簡略版log git log pretty oneline abbrev commit當前狀態 git status撤銷更改 git check...