Git 常用操作指令

安裝及配置:
配置用戶名:git config --global user.name"你的名字"
配置e-mail:git config --global user.email "你的郵箱"

遠(yuǎn)程分支:
查看遠(yuǎn)程分支:git remote -v
查看遠(yuǎn)程所有的分支:git branch -a (紅色代表當(dāng)前所在的分支)
拉取遠(yuǎn)程分支:git pull origin develop (develop是分支)
合并遠(yuǎn)程分支:git pull --rebase origin master (--rebase選項(xiàng)告訴Git提交移到同步了中央倉庫修改后的master分支的頂部镶苞,這樣不會生成一個合并提交)
推送遠(yuǎn)程分支:git push -u origin develop (-u 表示設(shè)置本地跟蹤遠(yuǎn)程對應(yīng)的分支,下次直接使用 git push 就可以了)
從遠(yuǎn)程倉庫直接創(chuàng)建一個分支:git checkout -b develop master 創(chuàng)建一個新的遠(yuǎn)程分支雳灵,-b選項(xiàng)表示如果分支還不存在則新建分支
刷新遠(yuǎn)程分支:git fetch origin (有時候 git branch -r 無法看到所有的遠(yuǎn)程分支,是因?yàn)闆]有刷新)
拉取遠(yuǎn)程分支:git checkout -b <name> origin/<name>

與添加有關(guān)的:
將當(dāng)前目錄變?yōu)閭}庫:git init
將文件添加到暫存區(qū):git add 文件名 [可選:另一個文件名]
將暫存區(qū)提交到倉庫:git commit –m "描述"
將工作區(qū)提交到倉庫:git commit –am "描述"

創(chuàng)建忽略文件
.gitignore 添加要忽略的文件名

與查詢有關(guān)的:
查詢倉庫狀態(tài):git status
比較文件差異(工作區(qū)和緩存區(qū)對比):git diff文件名
比較文件差異(緩存區(qū)和commit版本對比):git diff --cached 文件名
查看倉庫歷史記錄(詳細(xì)):git log
查看倉庫歷史記錄(單行):git log --pretty=onelinegit log --oneline
查看所有版本的commit ID:git reflog

與撤銷有關(guān)的:
刪除暫存區(qū):git rm --cached 文件名(--cached 表示只刪除緩存區(qū)中的內(nèi)容)
撤銷工作區(qū)的修改:git checkout -- 文件名
撤銷暫存區(qū)的修改:git reset HEAD 文件名
回退到歷史版本:git reset --hard 該版本ID
回退到上個版本:git reset --hard HEAD^
上上版本是HEAD^^,也可用HEAD~2表示媚值,以此類推
回退單個文件到某一個commit: git reset "commit-id" "filename"

git 合并指定分支上的 commit:
合并單個 commit (將 commit 62ecb3 合并到 master 分支上)
git checkout master
git cherry-pick 62ecb3

合并多個連續(xù) commit (將 commit 62ecb3 ~ 76cada 合并到master上)
git checkout -b newbranch 62ecb3
git rebase —onto master 76cada^
76cada^ 表示從 76cada 的 commit 開始合并(作為新的commit)宴树。這樣就完成了 76cada 到 62ecb3
合并到 master。

與標(biāo)簽有關(guān)的:
為當(dāng)前版本打標(biāo)簽:git tag 標(biāo)簽名
為歷史版本打標(biāo)簽:git tag 標(biāo)簽名 該版本ID
指定標(biāo)簽說明:git tag –a 標(biāo)簽名 –m "標(biāo)簽說明" [可選:版本ID]
查看所有標(biāo)簽:git tag
查看某一標(biāo)簽:git show 標(biāo)簽名
刪除某一標(biāo)簽:git tag –d 標(biāo)簽名
修改最后一次commit提交的信息:git commit --amend

分支管理:
創(chuàng)建分支:git branch dev
切換分支:git checkout dev
創(chuàng)建并切換分支:git checkout -b dev
刪除分支:git branch -d dev
在分支上提交版本:git commit -a -m 'dev1'
合并分支:git merge dev
分支合并后顯示log:git log --oneline --graph --decorate
準(zhǔn)備切換到其他分支额各,保存當(dāng)前分支內(nèi)容:git stash
再次切換回來后應(yīng)用保留的內(nèi)容:git stash apply
丟掉保存的內(nèi)容:git stash drop
使用并丟掉保存的內(nèi)容:git stash pop
將 A 分支上的一次 commit 合并到 B 分支上 git cherry-pick ( A 分支的一次 commit )

Rebase 的用法
合并最新的四個commit git rebase -i HEAD~4 (HEAD~4 就是合并后生成新的跟在這個后面)
減少分支的merge記錄 (當(dāng)前分支不是基于最新的master做的修改) git rebase master
修改最后的commit git commit --amend

與GitHub有關(guān)的:
先有本地庫国觉,后有遠(yuǎn)程庫,將本地庫push到遠(yuǎn)程庫
關(guān)聯(lián)本地倉庫和GitHub庫:git remote add origin 網(wǎng)站上的倉庫地址
第一次將本地倉庫推送到GitHub上:git push –u origin master
先有遠(yuǎn)程庫虾啦,后有本地庫麻诀,從遠(yuǎn)程庫clone到本地庫
從遠(yuǎn)程庫克隆到本地:git clone 網(wǎng)站上的倉庫地址

SSH Key
生成SSH Key:ssh-keygen –t rsa –C "你的郵箱@xx.com"
生成Key時彈出選項(xiàng),回車選擇默認(rèn)即可傲醉。
Key保存位置:/root/.ssh
登陸GitHub蝇闭,創(chuàng)建new SSH key,其內(nèi)容為/root/.ssh/id_rsa.pub中文本
已經(jīng)有了本地庫和遠(yuǎn)程庫硬毕,二者實(shí)現(xiàn)同步
本地庫的改動提交到遠(yuǎn)程庫:git push origin master
更新本地庫至遠(yuǎn)程庫的最新改動:git pull

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末呻引,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子吐咳,更是在濱河造成了極大的恐慌逻悠,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,039評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件韭脊,死亡現(xiàn)場離奇詭異童谒,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)沪羔,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,426評論 3 395
  • 文/潘曉璐 我一進(jìn)店門饥伊,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人任内,你說我怎么就攤上這事撵渡。” “怎么了死嗦?”我有些...
    開封第一講書人閱讀 165,417評論 0 356
  • 文/不壞的土叔 我叫張陵趋距,是天一觀的道長。 經(jīng)常有香客問我越除,道長节腐,這世上最難降的妖魔是什么外盯? 我笑而不...
    開封第一講書人閱讀 58,868評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮翼雀,結(jié)果婚禮上饱苟,老公的妹妹穿的比我還像新娘。我一直安慰自己狼渊,他們只是感情好箱熬,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,892評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著狈邑,像睡著了一般城须。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上米苹,一...
    開封第一講書人閱讀 51,692評論 1 305
  • 那天糕伐,我揣著相機(jī)與錄音,去河邊找鬼蘸嘶。 笑死良瞧,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的训唱。 我是一名探鬼主播褥蚯,決...
    沈念sama閱讀 40,416評論 3 419
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼雪情!你這毒婦竟也來了遵岩?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,326評論 0 276
  • 序言:老撾萬榮一對情侶失蹤巡通,失蹤者是張志新(化名)和其女友劉穎尘执,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體宴凉,經(jīng)...
    沈念sama閱讀 45,782評論 1 316
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡誊锭,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,957評論 3 337
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了弥锄。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片丧靡。...
    茶點(diǎn)故事閱讀 40,102評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖籽暇,靈堂內(nèi)的尸體忽然破棺而出温治,到底是詐尸還是另有隱情,我是刑警寧澤戒悠,帶...
    沈念sama閱讀 35,790評論 5 346
  • 正文 年R本政府宣布熬荆,位于F島的核電站,受9級特大地震影響绸狐,放射性物質(zhì)發(fā)生泄漏卤恳。R本人自食惡果不足惜累盗,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,442評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望突琳。 院中可真熱鬧若债,春花似錦、人聲如沸拆融。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,996評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽镜豹。三九已至挪凑,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間逛艰,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,113評論 1 272
  • 我被黑心中介騙來泰國打工搞旭, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留散怖,地道東北人。 一個月前我還...
    沈念sama閱讀 48,332評論 3 373
  • 正文 我出身青樓肄渗,卻偏偏與公主長得像镇眷,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子翎嫡,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,044評論 2 355