git init
//初始化版本庫(kù)
git add 文件名
//提交到暫存區(qū)
git commit -m '注釋'
//提交到版本庫(kù)
git status
//查看狀態(tài)
git log
//查看日志
git reflog
//查看所有版本詳細(xì)內(nèi)容
git reset --hard HEAD^
//回退一個(gè)版本
git reset --hard 版本號(hào)
//回退到指定版本號(hào),如何查看版本號(hào):git reflog
git checkout -- 文件名
//把當(dāng)前文件回退到暫存區(qū)的狀態(tài)或版本庫(kù)的狀態(tài)
git rm --cache 文件名
//將暫存區(qū)中的文件拋棄
當(dāng)執(zhí)行 "git rm --cached <file>" 命令時(shí),會(huì)直接從暫存區(qū)刪除文件灭贷,工作區(qū)則不做出改變凛澎。
git reset HEAD 文件名
//刪除暫存區(qū)文件
---------------------------------------------------------------------
添加文件到暫存區(qū)
Git add filename
將暫存區(qū)文件提交到倉(cāng)庫(kù)
Git commit -m '說(shuō)明'
對(duì)比文件差異
Git diff filename
# 工作處和暫存區(qū)
git diff HEAD filename
# 比較工作區(qū)和倉(cāng)庫(kù)
git diff --cached
# 比較暫存區(qū)與本地倉(cāng)庫(kù)
刪除暫存區(qū)內(nèi)容(保留工作區(qū)和倉(cāng)庫(kù)內(nèi)文件)
git reset HEAD filename
刪除工作區(qū)文件
git rm filename
刪除工作區(qū)文件躯枢,commit 后刪除倉(cāng)庫(kù)文件
刪除倉(cāng)庫(kù)和暫存區(qū)文件保存工作區(qū)文件
git rm --cache filename
丟棄工作區(qū)內(nèi)容
git checkout -- filename
如果暫存區(qū)有內(nèi)容則從暫存區(qū)恢復(fù)
如果暫存區(qū)沒(méi)有內(nèi)容則從版本庫(kù)恢復(fù)
如果暫存區(qū)和倉(cāng)庫(kù)都沒(méi)有則報(bào)錯(cuò)
pathspec 'filename' did not match any file(s) known to git
回退到指定版本()
git reset --hard HEAD^
查看日志:git log
git reflog
分支結(jié)構(gòu)
創(chuàng)建分支
Git branch 分支名稱
顯示所有分支列表
Git branch
切換分支
Git checkout 分支名稱
刪除分支
Git branch -d 分支名稱
合并分支
Git merge 分支名稱
主分支master
先創(chuàng)建分支微峰,切換到分支伙狐,修改bug剥纷,提交痹籍,切到主分支master,合并分支
Svn 集中化的版本控制系統(tǒng)
git 分布式版本控制系統(tǒng)
Git 去中心化晦鞋,可以不使用服務(wù)器