git命令分類整理
全局設(shè)置
-
git config --global user.name xxx
:設(shè)置全局用戶名,信息記錄在~/.gitconfig文件中 -
git config --global user.email xxx@xxx.com
:設(shè)置全局郵箱地址呻征,信息記錄在~/.gitconfig文件中 -
git init
:將當(dāng)前目錄配置成git倉庫洞拨,信息記錄在隱藏的.git文件夾中
常用命令
-
git add XX
:將XX文件添加到暫存區(qū) -
git reset HEAD .
: 撤銷所有的已經(jīng)add的文件 -
git commit -m
"給自己看的備注信息":將暫存區(qū)的內(nèi)容提交到當(dāng)前分支 -
git status
:查看倉庫狀態(tài) -
git log
:查看當(dāng)前分支的所有版本 -
git push -u
(第一次需要-u以后不需要) :將當(dāng)前分支推送到遠(yuǎn)程倉庫 -
git clone
git@git.acwing.com:xxx/XXX.git:將遠(yuǎn)程倉庫XXX下載到當(dāng)前目錄下 -
git branch
:查看所有分支和當(dāng)前所處分支
查看命令
-
git diff XX
:查看XX文件相對(duì)于暫存區(qū)修改了哪些內(nèi)容 -
git status
:查看倉庫狀態(tài) -
git log
:查看當(dāng)前分支的所有版本 -
git log --pretty=oneline
:用一行來顯示 -
git reflog
:查看HEAD指針的移動(dòng)歷史(包括被回滾的版本) -
git branch
:查看所有分支和當(dāng)前所處分支 -
git pull
:將遠(yuǎn)程倉庫的當(dāng)前分支與本地倉庫的當(dāng)前分支合并
刪除命令
-
git rm --cached XX
:將文件從倉庫索引目錄中刪掉,不希望管理這個(gè)文件 -
git restore --staged xx
:==將xx從暫存區(qū)里移除== -
git checkout — XX
或git restore XX
:==將XX文件尚未加入暫存區(qū)的修改全部撤銷==
代碼回滾
-
git reset --hard HEAD^
或git reset --hard HEAD~
:將代碼庫回滾到上一個(gè)版本 -
git reset --hard HEAD^^
:往上回滾兩次讼积,以此類推 -
git reset --hard HEAD~100
:往上回滾100個(gè)版本 -
git reset --hard 版本號(hào)
:回滾到某一特定版本
遠(yuǎn)程倉庫
-
git remote add origin git@git.acwing.com:xxx/XXX.git
:將本地倉庫關(guān)聯(lián)到遠(yuǎn)程倉庫 -
git remote update origin --prune
關(guān)聯(lián)后刷新查看所在branch -
git remote remove origin
: 解除與遠(yuǎn)端分支的關(guān)聯(lián) -
git branch -a
:查看現(xiàn)有branch和當(dāng)前branch -
git push -u
(第一次需要-u以后不需要) :將當(dāng)前分支推送到遠(yuǎn)程倉庫 -
git push origin branch_name
:將本地的某個(gè)分支推送到遠(yuǎn)程倉庫 -
git clone git@git.acwing.com:xxx/XXX.git
:將遠(yuǎn)程倉庫XXX下載到當(dāng)前目錄下 -
git clone -b <指定分支名> <遠(yuǎn)程倉庫地址>
: 將指定遠(yuǎn)端分支下載到當(dāng)前目錄 -
git push --set-upstream origin branch_name
:設(shè)置本地的branch_name
分支對(duì)應(yīng)遠(yuǎn)程倉庫的branch_name
分支 -
git push -d origin branch_name
:刪除遠(yuǎn)程倉庫的branch_name
分支 -
git checkout -t origin/branch_name
將遠(yuǎn)程的branch_name
分支拉取到本地 -
git pull
:將遠(yuǎn)程倉庫的當(dāng)前分支與本地倉庫的當(dāng)前分支合并 -
git pull origin branch_name
:將遠(yuǎn)程倉庫的branch_name分支與本地倉庫的當(dāng)前分支合并 -
git branch --set-upstream-to=origin/branch_name1 branch_name2
:將遠(yuǎn)程的branch_name1
分支與本地的branch_name2
分支對(duì)應(yīng)
分支命令
-
git branch branch_name
:創(chuàng)建新分支 -
git branch
:查看所有分支和當(dāng)前所處分支 -
git checkout -b branch_name
:創(chuàng)建并切換到branch_name
這個(gè)分支 -
git checkout branch_name
:切換到branch_name
這個(gè)分支 -
git merge branch_name
:將分支branch_name
合并到當(dāng)前分支上 -
git branch -d branch_name
:刪除本地倉庫的branch_name
分支 -
git push --set-upstream origin branch_name
:設(shè)置本地的branch_name
分支對(duì)應(yīng)遠(yuǎn)程倉庫的branch_name
分支 -
git push -d origin branch_name
:刪除遠(yuǎn)程倉庫的branch_name
分支 -
git checkout -t origin/branch_name
將遠(yuǎn)程的branch_name
分支拉取到本地 -
git pull
:將遠(yuǎn)程倉庫的當(dāng)前分支與本地倉庫的當(dāng)前分支合并-
git pull origin branch_name
:將遠(yuǎn)程倉庫的branch_name
分支與本地倉庫的當(dāng)前分支合并
-
-
git branch --set-upstream-to=origin/branch_name1 branch_name2
:將遠(yuǎn)程的branch_name1
分支與本地的branch_name2
分支對(duì)應(yīng)
stash暫存
-
git stash
:將工作區(qū)和暫存區(qū)中尚未提交的修改存入棧中 -
git stash apply
:將棧頂存儲(chǔ)的修改恢復(fù)到當(dāng)前分支肥照,但不刪除棧頂元素 -
git stash drop
:刪除棧頂存儲(chǔ)的修改 -
git stash pop
:將棧頂存儲(chǔ)的修改恢復(fù)到當(dāng)前分支,同時(shí)刪除棧頂元素 -
git stash list
:查看棧中所有元素