一览妖、本地操作:
1.其它
git init:初始化本地庫
git status:查看工作區(qū)、暫存區(qū)的狀態(tài)
git add <file name>:將工作區(qū)的“新建/修改”添加到暫存區(qū)
git rm --cached <file name>:移除暫存區(qū)的修改
git commit <file name>:將暫存區(qū)的內(nèi)容提交到本地庫
tip:需要再編輯提交日志乐疆,比較麻煩,建議用下面帶參數(shù)的提交方法
git commit -m "提交日志" <file name>:文件從暫存區(qū)到本地庫
2.日志
git log:查看歷史提交
tip:空格向下翻頁蹬铺,b向上翻頁咸灿,q退出
git log --pretty=oneline:以漂亮的一行顯示,包含全部哈希索引值
git log --oneline:以簡潔的一行顯示蕾羊,包含簡潔哈希索引值
git reflog:以簡潔的一行顯示辫秧,包含簡潔哈希索引值笤昨,同時顯示移動到某個歷史版本所需的步數(shù)
3.版本控制
git reset --hard 簡潔/完整哈希索引值:回到指定哈希值所對應(yīng)的版本
git reset --hard HEAD:強(qiáng)制工作區(qū)、暫存區(qū)审胸、本地庫為當(dāng)前HEAD指針?biāo)诘陌姹?/p>
git reset --hard HEAD^:后退一個版本
tip:一個^表示回退一個版本
git reset --hard HEAD~1:后退一個版本
tip:波浪線~后面的數(shù)字表示后退幾個版本
4.比較差異
git diff:比較工作區(qū)和暫存區(qū)的所有文件差異
git diff :比較工作區(qū)和暫存區(qū)的指定文件的差異
git diff HEAD|HEAD^|HEAD~|哈希索引值?:比較工作區(qū)跟本地庫的某個版本的指定文件的差異
5.分支操作
git branch -v:查看所有分支
git branch -d <分支名>:刪除本地分支
git branch <分支名>:新建分支
git checkout <分支名>:切換分支
git merge <被合并分支名>:合并分支
tip:如master分支合并 hot_fix分支尼变,那么當(dāng)前必須處于master分支上利凑,然后執(zhí)行 git merge hot_fix 命令
tip2:合并出現(xiàn)沖突
①刪除git自動標(biāo)記符號嫌术,如<<<<<<< HEAD哀澈、>>>>>>>等
②修改到滿意后度气,保存退出
「畎础③git add <file name>
④git commit -m "日志信息"磷籍,此時后面不要帶文件名
二适荣、本地庫跟遠(yuǎn)程庫交互:
git clone <遠(yuǎn)程庫地址>:克隆遠(yuǎn)程庫
功能:①完整的克隆遠(yuǎn)程庫為本地庫现柠,②為本地庫新建origin別名,③初始化本地庫
git remote -v:查看遠(yuǎn)程庫地址別名
git remote add <別名> <遠(yuǎn)程庫地址>:新建遠(yuǎn)程庫地址別名
git remote rm <別名>:刪除本地中遠(yuǎn)程庫別名
git push <別名> <分支名>:本地庫某個分支推送到遠(yuǎn)程庫弛矛,分支必須指定
git pull <別名> <分支名>:把遠(yuǎn)程庫的修改拉取到本地
tip:該命令包括git fetch够吩,git merge
git fetch <遠(yuǎn)程庫別名> <遠(yuǎn)程庫分支名>:抓取遠(yuǎn)程庫的指定分支到本地,但沒有合并
git merge <遠(yuǎn)程庫別名/遠(yuǎn)程庫分支名>:將抓取下來的遠(yuǎn)程的分支丈氓,跟當(dāng)前所在分支進(jìn)行合并
git fork:復(fù)制遠(yuǎn)程庫
tip:一般是外面團(tuán)隊的開發(fā)人員fork本團(tuán)隊項(xiàng)目周循,然后進(jìn)行開發(fā),之后外面團(tuán)隊發(fā)起pull request万俗,然后本團(tuán)隊進(jìn)行審核湾笛,如無問題本團(tuán)隊進(jìn)行merge(合并)到團(tuán)隊自己的遠(yuǎn)程庫,整個流程就是本團(tuán)隊跟外面團(tuán)隊的協(xié)同開發(fā)流程该编,Linux的團(tuán)隊開發(fā)成員即為這種工作方式迄本。