重拾git命令 筆記
本篇包含了日常用到的git命令。今天系統(tǒng)性的學(xué)習(xí)了一下。
給大家推薦一個(gè)好的git入門(mén)網(wǎng)站花個(gè)半天就能學(xué)會(huì)哦。
Git教程
git筆記
Git is a version control system
git is free software
基本命令:
git init 初始化目錄
git add {文件名稱} 放入git倉(cāng)庫(kù)的暫存區(qū)域
git commit -m {提交說(shuō)明} 把文件提交到倉(cāng)庫(kù)
git status 查看提交狀態(tài)
git diff 對(duì)比改動(dòng)
git log 查看提交日志 (--pretty={oneline} 只看概要)
git 輸入 git log --all 命令后出現(xiàn)<END>標(biāo)記?按Q退出
rm {文件命} 刪除文件
工作區(qū)回滾至分支
- git reset --hard {版本號(hào)} 回滾到具體的版本號(hào)
- git reset --hard HEAD^ 回滾(^表示上一次 ^^前兩次 HEAD~100 前100次)
- git reflog 可以再回滾出錯(cuò)后查看每一次的log 再用reset hard {版本號(hào)}可以回滾到指定的版本
工作區(qū)回滾至未修改前(丟去本次工作區(qū)的修改)
- git checkout -- file 工作區(qū)的修改全部撤銷
暫存區(qū)回滾到工作區(qū)
- git reset HEAD file
比較
- git diff #是工作區(qū)(work dict)和暫存區(qū)(stage)的比較
- git diff --cached #是暫存區(qū)(stage)和分支(master)的比較
- git diff HEAD -- {文件名} #是工作區(qū)(work dict)和分支(master)的比較
push
- git push -u origin master 將本地庫(kù)push到遠(yuǎn)程origin上去 -u表示Git不但會(huì)把本地的master分支內(nèi)容推送的遠(yuǎn)程新的master分支,還會(huì)把本地的master分支和遠(yuǎn)程的master分支關(guān)聯(lián)起來(lái),在以后的推送或者拉取時(shí)就可以簡(jiǎn)化命令。
- git push origin master 簡(jiǎn)化以后:將本地倉(cāng)庫(kù)中的代碼push至origin
分支
- git branch {分支名稱} 創(chuàng)建分支
- git checkout {分支名稱} 切換到該分支
- git checkout -b {分支名稱} 創(chuàng)建一個(gè)分支并-b切換到該分支
- git branch 查看當(dāng)前分支
- git merge {分支名稱} 將當(dāng)前的分支與{}中的分支合并
- git merge --no-ff -m "merge with no-ff" dev 表示禁用Fast forward 會(huì)保留分支上的提交信息
- git branch -d {分支名稱} 刪除一個(gè)分支
- git log --graph --pretty=oneline --abbrev-commit 查看分支情況
分支管理策略
在實(shí)際開(kāi)發(fā)中,我們應(yīng)該按照幾個(gè)基本原則進(jìn)行分支管理:
首先,master分支應(yīng)該是非常穩(wěn)定的,也就是僅用來(lái)發(fā)布新版本,平時(shí)不能在上面干活;
那在哪干活呢?干活都在dev分支上,也就是說(shuō),dev分支是不穩(wěn)定的,到某個(gè)時(shí)候,比如1.0版本發(fā)布時(shí),再把dev分支合并到master上,在master分支發(fā)布1.0版本;
你和你的小伙伴們每個(gè)人都在dev分支上干活,每個(gè)人都有自己的分支,時(shí)不時(shí)地往dev分支上合并就可以了。

b.png
TAG
- git tag v1.0 打標(biāo)簽
- git tag 查看標(biāo)簽
- git tag v0.9 6224937 給6224937這次commit打上標(biāo)簽