1 .創(chuàng)建一個(gè)版本庫(kù)
創(chuàng)建一個(gè)版本庫(kù)有兩種方式,一種自己新建奶是,一種克隆已有的。
- 新建倉(cāng)庫(kù)
git init #初始化
git status #獲取狀態(tài)
git add [file1] [file2] ... #.或*代表全部添加
git commit -m "message" #此處注意亂碼
git remote add origin git@github.com:SandraDan/test.git #添加源
git push -u origin master #push同時(shí)設(shè)置默認(rèn)跟蹤分支 - 從現(xiàn)有倉(cāng)庫(kù)克隆
git clone https://github.com/路徑
2.本地
git add * /git add .# 把所有文件添加到暫存盤(pán)
git add -u [path] # 添加[指定路徑下]已跟蹤文件
git rm -f * # 移除文件
git rm --cached * # 停止追蹤指定文件,但該文件會(huì)保留在工作區(qū)
git log # 查看提交記錄
git commit # 提交更新
git commit [file1] [file2] ... # 提交指定文件
git commit -m 'message' 提交時(shí)加提交說(shuō)明
git commit -a # 跳過(guò)使用暫存區(qū)域兜叨,把所有已經(jīng)跟蹤過(guò)的文件暫存起來(lái)一并提交
git commit --am 把文件添加暫存盤(pán),并且提交分支
git reset HEAD *#取消已經(jīng)暫存的文件
git reset --mixed HEAD *#同上
git reset --soft HEAD *#重置到指定狀態(tài)衩侥,不會(huì)修改索引區(qū)和工作樹(shù)
git reset --hard HEAD *#重置到指定狀態(tài)国旷,會(huì)修改索引區(qū)和工作樹(shù)
git reset -- files#重置index區(qū)文件
git diff file #查看指定文件的差異
git diff --stat #查看簡(jiǎn)單的diff結(jié)果
git log #查看最近的提交日志
git log --pretty=oneline #單行顯示提交日志
3 .分支
git branch#列出本地分支
git branch -r#列出遠(yuǎn)端分支
git branch -a#列出所有分支
git branch --merge#查看已經(jīng)合并到當(dāng)前分支的分支
git branch test#新建test分支
git branch -d test#刪除test分支
git branch -D test#強(qiáng)制刪除test分支
git checkout test#切換到test分支
git checkout -b test#新建+切換到test分支
git checkout -b test dev#基于dev新建test分支,并切換
git merge test#將test分支合并到當(dāng)前分支
4.遠(yuǎn)端
git fetch origin remotebranch[:localbranch]# 從遠(yuǎn)端拉去分支[到本地指定分支]
git merge origin/branch#合并遠(yuǎn)端上指定分支
git pull # 從遠(yuǎn)程倉(cāng)庫(kù)拉取新代碼
git push #將當(dāng)前分支茫死,推送到遠(yuǎn)端上指定分支
5 .標(biāo)簽
當(dāng)開(kāi)發(fā)到一定階段時(shí)跪但,給程序打標(biāo)簽是非常棒的功能。
git tag#列出現(xiàn)有標(biāo)簽
git tag v0.1 [branch|commit] # [從指定位置]新建標(biāo)簽
git tag -a v0.1 -m 'my version 1.4'#新建帶注釋標(biāo)簽
git checkout tagname#切換到標(biāo)簽
git push origin v1.5#推送分支到源上
git push origin --tags#一次性推送所有分支
git tag -d v0.1#刪除標(biāo)簽
git push origin :refs/tags/v0.1#刪除遠(yuǎn)程標(biāo)簽
6 .其他
git help *#獲取命令的幫助信息
git status#獲取當(dāng)前的狀態(tài)