Git命令
git remote
列出遠程倉庫的詳細信息,在別名后面列出URL地址
gite remote -v
git remote --verbose
添加遠程倉庫
git remote add <遠程倉庫的別名> <遠程倉庫的URL地址>
git reflog
可以查看所有分支的所有操作記錄(包括了commit和reset的操作和cimmit記錄)
git init
初始化一個本地版庫(僅用執行一次)
git branch
列出本地的所有分支,當前所在分支以 "*" 標出
創建新分支,新的分支基于上一次提交建立:git branch <分支名>
修改分支名稱:git branch -m [<原分支名稱>] <新的分支名稱>
? 強制修改:git branch -M [<原分支名稱>] <新的分支名稱>
刪除指定的本地分支:git branch -d <分支名稱>
? 強制刪除:git branch -D <分支名稱>
git fetch
將遠程倉庫所有分支的最新版本全部取回到本地:git fetch <遠程倉庫的別名>
將遠程倉庫指定分支的最新版本取回到本地:git fetch <遠程主機名> <分支名>
git merge
把指定的分支合并到當前所在的分支下
git merge <分支名稱>
git commit(后跟注釋內容)
git commit-m "本次提交描述"
將git add .存入暫存區修改內容提交至本地倉庫,若文件未添加至暫存區,提交時不會提交任何更改(注意要線提交至本地倉庫)
git commit-a
可以看作是運行了git add -u 把所有當前目錄下的文件加入到緩存區域再進運行git commit(對于新增的文件,并沒有被commit)(需要先進行add到緩存區)
git commit-amend
修改最近一次提交
git add
保存修改和刪除,但是不包括新建文件:git add .
保存所有的修改:git add -A
保存修改和刪除,不包括新建文件:git add -u
添加所有修改、已刪除、新增的文件到暫存區中,省略 <文件路徑> 即為當前目錄:git add -A [<文件路徑>]
git status
查看當前倉庫狀態
文件狀態:A 新增,M 修改,D 刪除,?? 未添加到Git中
git reset
回退某一個版本:git reset commit-id
根據-soft -mixed -hard,對working tree和index和HEAD進行重置
soft參數:git reset --soft HEAD~1 意為將版本庫軟回退1個版本,所謂軟回退表示將本地版本庫的頭指針全部重置到指定版本,且將這次提交之后的所有變更都移動到暫存區
mixed參數:git reset HEAD~1 意為將版本庫回退1個版本,將本地版本庫的頭指針全部重置到指定版本,且會重置暫存區,即這次提交之后的所有變更都移動到工作區
hard參數:git reset --hard HEAD~1 意為將版本庫回退1個版本,但是不僅僅是將本地版本庫的頭指針全部重置到指定版本,也會重置暫存區,并且會將工作區代碼清空(工作區是clean狀態)
注意:soft參數和默認參數都不會修改工作區代碼,唯有hard會修改工作區代碼
git pull
從遠程更新代碼
git diff
比較當前文件和暫存區中文件的差異,顯示沒有暫存起來的更改
比較兩個分支之間的差異:git diff <分支名稱> <分支名稱>
git revert
生成一個新的提交來撤銷某次提交
git checkout
可操作分支,也可以操作文件
切換到已存在的指定分支:git checkout <分支名稱>
git clone
從遠程倉庫克隆一個版本庫到本地。
默認在當前目錄下創建和版本庫名相同的文件夾并下載版本到該文件夾下:git clone <遠程倉庫的網址>
git mv
重命名指定的文件或者文件夾:git mv <源文件/文件夾> <目標文件/文件夾>