git 操作記錄(二)

本篇記錄平時(shí)git 用到的常用命令

git status

$ git status
  • 顯示文件狀態(tài)
$ git status -s
  • 以精簡(jiǎn)的形式顯示文件狀態(tài)

git add

$ git add .  // 提交新文件(new)和被修改(modified)文件甩卓,不包括被刪除(deleted)文件
$ git add -u  // 提交被修改(modified)和被刪除(deleted)文件,不包括新文件(new)
$ git add -A  // 提交所有變化

git commit

$ git commit -m 'message'
  • 添加更改記錄
$ git commit -am 'message'
  • 添加已跟蹤過(guò)的文件
$ git commit --amend
  • 修改已提交的commit記錄, 也叫追加提交

一些commit規(guī)范,如下所示

feat:新功能(feature)
fix:修補(bǔ)bug
docs:文檔(documentation)
style: 格式(不影響代碼運(yùn)行的變動(dòng))
modify:修改代碼,并非修改bug,可能是優(yōu)化代碼
refactor:重構(gòu)(即不是新增功能,也不是修改bug的代碼變動(dòng))
test:增加測(cè)試
chore:構(gòu)建過(guò)程或輔助工具的變動(dòng)


git reset

$ git reset --soft HEAD^ 
  • 不刪除工作空間改動(dòng)代碼勒叠,撤銷commit,不撤銷git add .
  • 簡(jiǎn)單來(lái)說(shuō)就是刪除git log 的記錄 不撤銷暫存區(qū)的內(nèi)容
$ git reset --mixed HEAD^
  • 不刪除工作空間改動(dòng)代碼膏孟,撤銷commit眯分,并且撤銷git add .
  • 簡(jiǎn)單來(lái)說(shuō)就是刪除git log 的記錄并且撤銷暫存區(qū)的內(nèi)容
  • --mixed 默認(rèn)參數(shù),git reset --mixed HEAD^git reset HEAD^ 效果一樣柒桑。
## 回退至上一個(gè)版本
$ git reset --hard HEAD^  
  • 刪除工作空間改動(dòng)代碼弊决,撤銷commit,撤銷git add .
  • 完成這個(gè)操作后魁淳,就恢復(fù)到了上一次commit的狀態(tài)飘诗。

HEAD: 表示當(dāng)前版本
HEAD^:表示上一個(gè)版本
...以此類推

或者

HEAD~: 表示上一個(gè)版本
HEAD~2 :表示上兩個(gè)版本
...以此類推


git log

$ git log 
  • 查看commit的版本日志(包含提交的版本 操作者 日期)
  • 版本回退后 該指令不能查看回退前的日志信息
git log --oneline
  • 縮略展示提交信息 更直觀 流暢

git reflog

$ git reflog
  • reflog是git操作的一道安全保障,它能夠記錄幾乎所有本地倉(cāng)庫(kù)的改變界逛。包括所有分支commit提交昆稿,已經(jīng)刪除(其實(shí)并未被實(shí)際刪除)commit都會(huì)被記錄。

git diff

## 默認(rèn)比較查看當(dāng)前分支的改變
$ git diff

git fetch

$ git fetch
  • 將某個(gè)遠(yuǎn)程主機(jī)的更新全部取回本地
$ git fetch -p
  • 獲取遠(yuǎn)程倉(cāng)庫(kù)的新分支以及刪除遠(yuǎn)程倉(cāng)庫(kù)已刪除的分支

git pull

$ git pull origin <遠(yuǎn)程分支>
// 配置ssh連接
//  git branch -r | grep -v '\->' | while read remote; do git branch --track "${remote#origin/}" "$remote"; done
  • 拉取指定遠(yuǎn)程分支
$ git pull --all 
  • 拉取所有遠(yuǎn)程分支

git push

$ git push origin <遠(yuǎn)程分支>
  • 推送本地當(dāng)前分支到指定遠(yuǎn)程分支
git push <remote address> --all
  • 推送本地所有分支到指定遠(yuǎn)程倉(cāng)庫(kù)地址

合并代碼的完整操作

## 在本地新建一個(gè)temp分支息拜,并將遠(yuǎn)程origin倉(cāng)庫(kù)的master分支代碼下載到本地temp分支
$ git fetch origin master:temp

## 比較本地代碼與剛剛從遠(yuǎn)程下載下來(lái)的代碼的區(qū)別
$ git diff temp

## 合并temp分支到本地的master分支
$ git merge temp

## 如果不想保留temp分支溉潭,刪除
$ git branch -d temp
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市少欺,隨后出現(xiàn)的幾起案子喳瓣,更是在濱河造成了極大的恐慌,老刑警劉巖赞别,帶你破解...
    沈念sama閱讀 216,544評(píng)論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件畏陕,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡仿滔,警方通過(guò)查閱死者的電腦和手機(jī)惠毁,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,430評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)堤撵,“玉大人仁讨,你說(shuō)我怎么就攤上這事羽莺∈底颍” “怎么了?”我有些...
    開(kāi)封第一講書人閱讀 162,764評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵盐固,是天一觀的道長(zhǎng)荒给。 經(jīng)常有香客問(wèn)我丈挟,道長(zhǎng),這世上最難降的妖魔是什么志电? 我笑而不...
    開(kāi)封第一講書人閱讀 58,193評(píng)論 1 292
  • 正文 為了忘掉前任曙咽,我火速辦了婚禮,結(jié)果婚禮上挑辆,老公的妹妹穿的比我還像新娘例朱。我一直安慰自己,他們只是感情好鱼蝉,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,216評(píng)論 6 388
  • 文/花漫 我一把揭開(kāi)白布洒嗤。 她就那樣靜靜地躺著,像睡著了一般魁亦。 火紅的嫁衣襯著肌膚如雪渔隶。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書人閱讀 51,182評(píng)論 1 299
  • 那天洁奈,我揣著相機(jī)與錄音间唉,去河邊找鬼。 笑死利术,一個(gè)胖子當(dāng)著我的面吹牛呈野,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播印叁,決...
    沈念sama閱讀 40,063評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼际跪,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了喉钢?” 一聲冷哼從身側(cè)響起姆打,我...
    開(kāi)封第一講書人閱讀 38,917評(píng)論 0 274
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎肠虽,沒(méi)想到半個(gè)月后幔戏,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,329評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡税课,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,543評(píng)論 2 332
  • 正文 我和宋清朗相戀三年闲延,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片韩玩。...
    茶點(diǎn)故事閱讀 39,722評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡垒玲,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出找颓,到底是詐尸還是另有隱情合愈,我是刑警寧澤,帶...
    沈念sama閱讀 35,425評(píng)論 5 343
  • 正文 年R本政府宣布,位于F島的核電站佛析,受9級(jí)特大地震影響益老,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜寸莫,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,019評(píng)論 3 326
  • 文/蒙蒙 一捺萌、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧膘茎,春花似錦桃纯、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書人閱讀 31,671評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至刮萌,卻和暖如春驮配,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背着茸。 一陣腳步聲響...
    開(kāi)封第一講書人閱讀 32,825評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工壮锻, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人涮阔。 一個(gè)月前我還...
    沈念sama閱讀 47,729評(píng)論 2 368
  • 正文 我出身青樓猜绣,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親敬特。 傳聞我的和親對(duì)象是個(gè)殘疾皇子掰邢,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,614評(píng)論 2 353

推薦閱讀更多精彩內(nèi)容

  • 1. GIT命令 git init在本地新建一個(gè)repo,進(jìn)入一個(gè)項(xiàng)目目錄伟阔,執(zhí)行g(shù)it init辣之,會(huì)初始化一個(gè)re...
    江邊一蓑煙閱讀 798評(píng)論 0 0
  • 查看、添加皱炉、提交怀估、刪除、找回合搅,重置修改文件 git help # 顯示command的help git sho...
    Swiftor閱讀 2,111評(píng)論 0 2
  • 一 Git配置和倉(cāng)庫(kù)初始化 下面會(huì)介紹Git的使用灾部,每個(gè)小節(jié)里會(huì)講解各個(gè)功能在命令行中的實(shí)現(xiàn)方式康铭,并在每小節(jié)的最后...
    Happioo閱讀 3,354評(píng)論 0 5
  • git 使用筆記 git原理: 文件(blob)對(duì)象,樹(shù)(tree)對(duì)象赌髓,提交(commit)對(duì)象 tree對(duì)象 ...
    神刀閱讀 3,771評(píng)論 0 10
  • 簡(jiǎn)介 Git是一個(gè)開(kāi)源的分布式版本控制系統(tǒng)从藤,用于敏捷高效地處理任何或小或大的項(xiàng)目催跪。 Git 與常用的版本控制工具 ...
    閩越布衣閱讀 2,739評(píng)論 0 18