前言
Git在平時(shí)的開發(fā)中經(jīng)常使用既琴,整理Git使用全面的梳理翘紊。
基本內(nèi)容
開始之前
請(qǐng)自行準(zhǔn)備好Git工具以及配置好Git的基本配置
基礎(chǔ)內(nèi)容
基礎(chǔ)概念
如下內(nèi)容虱疏,在碼云或者Github上新建倉庫出現(xiàn)的內(nèi)容乌询,
mkdir demo
cd demo
git init
touch README.md
git add README.md
git commit -m "first commit"
git remote add origin https://gitee.com/will-we/demo.git
git push -u origin master
基礎(chǔ)命令
git init
創(chuàng)建git倉庫
git add
把文件添加進(jìn)去背蟆,實(shí)際上就是把文件修改添加到暫存區(qū)
git status
查看倉庫當(dāng)前的狀態(tài)
git diff
查看difference
git log
顯示從最近到最遠(yuǎn)的提交日志
git reset --hard
版本回復(fù)肪虎,格式:git reset --hard commit的Id號(hào)
git reset --hard HEAD^
回到上次提交的版本
git reflog
記錄在本地存儲(chǔ)庫中更新分支和其他引用的提示
git checkout -- file
文件在工作區(qū)的修改全部撤銷
git reset HEAD <file>
將當(dāng)前版本上文件恢復(fù)
git rm
刪除暫存區(qū)的文件(直接工區(qū)刪除后劣砍,提交版本庫也刪除)
遠(yuǎn)程倉庫
開始之前,請(qǐng)配置本地與遠(yuǎn)程倉庫的相關(guān)配置扇救,秘鑰等配置
git remote
查看遠(yuǎn)程庫的信息
git remote -v
顯示更詳細(xì)的信息
git push origin master
推送到遠(yuǎn)程主分支
> 推送失敗刑枝,先用git pull抓取遠(yuǎn)程的新提交,有沖突先解決沖突
分支管理
基本命令
git checkout -b dev
創(chuàng)建并切換dev
分支
git branch
查看所有分支迅腔,當(dāng)前分支*
表示
git branch <name>
創(chuàng)建分支
git merge
命令用于合并指定分支到當(dāng)前分支
git branch -d <name>
刪除分支
git branch -D <name>
強(qiáng)行刪除分支(git branch -d <name>
刪除操作時(shí)會(huì)該分支做合并装畅,如果沒有合并將出現(xiàn)錯(cuò)誤)
git log --graph --pretty=oneline --abbrev-commit
看到分支的合并情況
stash命令
git stash
將工作備份后臨時(shí)清理工作區(qū)為版本庫,用于緊急修改缺陷場(chǎng)景
git stash list
查看備份的工作現(xiàn)場(chǎng)
git stash apply
恢復(fù)工作現(xiàn)場(chǎng)
git stash drop
刪除之前的備份現(xiàn)場(chǎng)
git stash pop
先恢復(fù)再刪除之前的備份
rebase命令
git rebase
作用 和git merge
的效果類似沧烈,但是git rebase
不再包含分支的提交信息最終log為一條直線
關(guān)于兩者的區(qū)別可參考內(nèi)容: git rebash 和 git merge 區(qū)別
在rebase的過程中洁灵,也許會(huì)出現(xiàn)沖突(conflict). 在這種情況,Git會(huì)停止rebase并會(huì)讓你去解決 沖突掺出;在解決完沖突后徽千,用"git-add"命令去更新這些內(nèi)容的索引(index), 然后,你無需執(zhí)行 git-commit,只要執(zhí)行汤锨;當(dāng)然可以--absort
回復(fù)到rebase之前的狀態(tài)双抽。
$ git rebase --continue
沖突問題
“<<<<<<<” 表示沖突代碼開始
“=======” 表示test與master沖突代碼分隔符
“>>>>>>>" 表示沖突代碼的結(jié)束
標(biāo)簽管理
git tag
顯示標(biāo)簽列表
git tag <tagname>
添加輕標(biāo)簽
git log --decorate
顯示包含標(biāo)簽資料的歷史記錄
git tag -a <tagname> -m '注解內(nèi)容'
添加注解標(biāo)簽
git tag -n
顯示標(biāo)簽的列表和注解
git tag -d <tagname>
刪除標(biāo)簽
git push origin <tagname>
可以推送一個(gè)本地標(biāo)簽
git push origin --tags
可以推送全部未推送過的本地標(biāo)簽;
git push origin :refs/tags/<tagname>
可以刪除一個(gè)遠(yuǎn)程標(biāo)簽
參考教程