創(chuàng)建版本庫(kù),添加并提交文件,查看倉(cāng)庫(kù)的狀態(tài)
- git init
- git add . //提交單個(gè)文件則使用 git add a.txt
- git commit -m "提交說(shuō)明" //git commit -m "desc fix/close #id" 關(guān)聯(lián)issue
- git status
- git log //顯示從最近到最遠(yuǎn)的提交日志
- git log --pretty=oneline //顯示commit id(版本號(hào))和 commit 日志記錄
- git log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit //查看分支情況
- git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit" //設(shè)置zsh快捷鍵
- git reset --hard //版本回退(回退到具體的版本號(hào)使用 git reset Commit-id)
- git reflog //用來(lái)記錄你的每一次命令(即使回退了也可以看到)
- rm a.txt //刪除文件
- git checkout -- a.txt //把誤刪的文件恢復(fù)到最新版本
遠(yuǎn)程倉(cāng)庫(kù)
- ssh-keygen -t rsa -C "youremail@example.com" //創(chuàng)建SSH Key
- $ git remote add origin “項(xiàng)目地址” //關(guān)聯(lián)遠(yuǎn)程庫(kù)
- $ git push -u origin master //將本地所有的文件推到遠(yuǎn)程倉(cāng)庫(kù)(由于遠(yuǎn)程庫(kù)是空的,我們第一次推送master分支時(shí),加上了-u參數(shù),Git不但會(huì)把本地的master分支內(nèi)容推送的遠(yuǎn)程新的master分支,還會(huì)把本地的master分支和遠(yuǎn)程的master分支關(guān)聯(lián)起來(lái),在以后的推送或者拉取時(shí)就可以簡(jiǎn)化命令。)
- git clone “項(xiàng)目地址” //克隆遠(yuǎn)程庫(kù)到本地
分支
- git checkout -b dev //創(chuàng)建分支dev相當(dāng)于$ git branch dev 和 $git checkout dev兩條命令
- git branch //查看分支
- git merge dev //合并dev分支(命令用于合并指定分支到當(dāng)前分支)
- git branch -d dev //刪除分支(-D強(qiáng)行刪除)
標(biāo)簽
- git tag v1.0 //創(chuàng)建標(biāo)簽
- git tag //查看標(biāo)簽
- git tag v1.1 commit-id //給某個(gè)commit提交記錄添加標(biāo)簽
- git show v1.1 //查看標(biāo)簽信息
- git tag -a v0.1 -m "version 0.1 released" commit-id //為標(biāo)簽添加信息的記錄(-a指定標(biāo)簽名,-m添加說(shuō)明)
- git tag -d v1.1 //刪除標(biāo)簽
- git push origin v1.0 //提交標(biāo)簽到遠(yuǎn)程
- git push origin --tags //一次性提交所有標(biāo)簽
- git tag -d v0.9 && git push origin :refs/tags/v0.9 //刪除遠(yuǎn)程標(biāo)簽分別執(zhí)行兩條命令
抓取遠(yuǎn)程分支
- git fetch origin <遠(yuǎn)程分支名> //此時(shí)會(huì)在本地就有分支了
使用 git branch -r 查看, 一般結(jié)果為
origin/HEAD -> origin/master
origin/master
origin/<遠(yuǎn)程分支名>
- 本地新建分支, 把此分支放入其中
git checkout -b <本地分支名> origin/<遠(yuǎn)程分支名>