git超簡(jiǎn)易使用教程

git簡(jiǎn)介

git是一個(gè)分布式版本控制系統(tǒng)帐萎,分布式的意思簡(jiǎn)單來(lái)說(shuō)大家可以在自己本地倉(cāng)庫(kù)各自操作娜庇。

coding是一個(gè)國(guó)內(nèi)的代碼托管平臺(tái)蛮粮,相似的還有碼云出吹。使用不同的平臺(tái)時(shí)也可以在相應(yīng)的平臺(tái)查看幫助。

git與coding配合可以實(shí)現(xiàn)代碼的云端保存掂名,成員之間的高效合作据沈,可以創(chuàng)建不同的分支來(lái)進(jìn)行不同模塊的開(kāi)發(fā),將自己的代碼更新到云端或者在云端下載他人更新的最新版本饺蔑,也可以使用版本回退等功能控制版本锌介。本文的一些命令以coding平臺(tái)的操作為例。

本文是git超簡(jiǎn)易使用教程猾警,初次使用者先按步驟完成“git初始化與遠(yuǎn)程關(guān)聯(lián)部分”孔祸,然后根據(jù)自己的身份(創(chuàng)建者或成員)使用push命令將自己的代碼推向云端或者使用pull命令將云端的代碼拉向本地,再進(jìn)行之后的開(kāi)發(fā)发皿。

如果需要更詳細(xì)的git教程崔慧,可以查看git的官方文檔(有中文的)
https://git-scm.com/book/zh/v2
也可以查看廖雪峰的git教程
http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/

git初始化與遠(yuǎn)程關(guān)聯(lián)

使用git

新建立一個(gè)文件夾,在文件夾中點(diǎn)擊右鍵穴墅,選擇Git Bash Here

初始化本地倉(cāng)庫(kù)
git init

將當(dāng)前的文件夾作為Git工作區(qū)惶室,并且建立Git版本庫(kù)(請(qǐng)不要修改或刪除.git文件夾里面的內(nèi)容),這時(shí)候會(huì)創(chuàng)建一個(gè)主分支

配置SSH Key

配置ssh key是為了和遠(yuǎn)程倉(cāng)庫(kù)建立聯(lián)系

$ ssh-keygen -t rsa -C <郵箱>

把最后的<郵箱>換成自己的郵箱,回車執(zhí)行命令后會(huì)叫選擇一個(gè)文件夾來(lái)放公鑰封救,可以直接回車選擇默認(rèn)的
然后打開(kāi)C盤拇涤,將用戶主目錄下的.ssh文件夾中id_rsa.pub中的內(nèi)容復(fù)制出來(lái)
然后打開(kāi)coding的頁(yè)面,賬戶->SSH公鑰->將剛才復(fù)制的內(nèi)容粘貼到公鑰內(nèi)容中誉结,點(diǎn)擊添加按鈕

$ ssh -T git@git.coding.net

yes
然后會(huì)出現(xiàn)什么什么successfully的字樣鹅士,這個(gè)命令是完成首次鏈接信任主機(jī)

關(guān)聯(lián)遠(yuǎn)程倉(cāng)庫(kù)
git remote add <遠(yuǎn)端倉(cāng)庫(kù)名> <遠(yuǎn)端倉(cāng)庫(kù)地址>

中間的遠(yuǎn)端倉(cāng)庫(kù)名是你在本地給遠(yuǎn)程倉(cāng)庫(kù)取個(gè)代號(hào),因?yàn)榭梢躁P(guān)聯(lián)多個(gè)遠(yuǎn)程倉(cāng)庫(kù)惩坑,所以代號(hào)用來(lái)區(qū)分掉盅,一般寫(xiě)為origin,后面的地址就是coding云端倉(cāng)庫(kù)的地址以舒,最好用SSH方式(前邊的SSH公鑰配置就是為了這個(gè))

git remote

查看自己關(guān)聯(lián)的遠(yuǎn)程倉(cāng)庫(kù)

git remote -v

查看自己關(guān)聯(lián)的遠(yuǎn)程倉(cāng)庫(kù)以及權(quán)限

git獲取遠(yuǎn)端更新

將遠(yuǎn)端的項(xiàng)目克隆到本地
git clone <地址>

會(huì)將遠(yuǎn)端倉(cāng)庫(kù)的內(nèi)容復(fù)制到本地趾痘,但是會(huì)在所有文件及文件夾的最外面設(shè)置一個(gè)文件夾,名字為遠(yuǎn)端的項(xiàng)目名蔓钟,第一次從遠(yuǎn)端獲取項(xiàng)目更推薦使用下面的pull命令

將遠(yuǎn)端的項(xiàng)目pull到本地
git pull <遠(yuǎn)端倉(cāng)庫(kù)名> <遠(yuǎn)端分支名>:<本地分支名>

取回遠(yuǎn)程主機(jī)某個(gè)分支的更新永票,再與本地的指定分支合并,第一次從遠(yuǎn)端獲取項(xiàng)目也可以用這個(gè),或者在遠(yuǎn)端有了更新時(shí)滥沫,可以用此操作來(lái)更新本地的分支

當(dāng)遠(yuǎn)端分支和本地分支名相同時(shí)侣集,可以寫(xiě)成下面這樣

git pull <遠(yuǎn)端倉(cāng)庫(kù)名> <分支名>
使用fetch+merge獲取遠(yuǎn)端更新
git fetch <遠(yuǎn)端倉(cāng)庫(kù)名> <遠(yuǎn)端分支名>

先獲取遠(yuǎn)端更新

git diff <本地分支名> <遠(yuǎn)端倉(cāng)庫(kù)名>/<遠(yuǎn)端分支名>

將獲取的更新與本地分支進(jìn)行比較

git merge <遠(yuǎn)端倉(cāng)庫(kù)名>/<遠(yuǎn)端分支名>

再將遠(yuǎn)端更新與本地當(dāng)前分支合并

git提交修改

將工作區(qū)的修改add到暫存區(qū)
git add <文件或文件夾的名字>

也可以直接使用以下命令add全部修改

git add .

此寫(xiě)法是在add后面空一格然后打一個(gè)點(diǎn)

查看status
git status

git status命令可以列出當(dāng)前目錄所有還沒(méi)有被git管理的文件和被git管理且被修改但還未提交(git commit)的文件

提交修改到倉(cāng)庫(kù)
git commit -m "引號(hào)中是此次提交修改的簡(jiǎn)單介紹"
將本地的項(xiàng)目push到遠(yuǎn)端
git push <遠(yuǎn)端倉(cāng)庫(kù)名> <本地分支名>:<遠(yuǎn)端分支名>

將本地的某個(gè)分支推到遠(yuǎn)端,當(dāng)遠(yuǎn)端沒(méi)有這個(gè)分支時(shí)兰绣,會(huì)被創(chuàng)建

當(dāng)遠(yuǎn)端分支和本地分支名相同時(shí)世分,可以寫(xiě)成下面這樣

git push <遠(yuǎn)端倉(cāng)庫(kù)名> <分支名>

git分支管理

創(chuàng)建新的分支
git branch <分支名>

創(chuàng)建一個(gè)新的分支,注意并不會(huì)切換到這個(gè)分支

查看已有的分支
git branch

上面這行命令是查看本地的分支

git branch -a

查看所有分支缀辩,其中綠色的是當(dāng)前分支臭埋,白色的是本地分支踪央,紅色的是遠(yuǎn)端的

切換分支
git checkout <分支名>

切換到另一個(gè)分支上進(jìn)行操作

刪除分支
git branch -d <分支名>
合并分支
git merge <另一個(gè)分支名>

將另一個(gè)分支和當(dāng)前分支合并

git版本控制

顯示提交日志
git log

顯示每次的提交記錄,按Q可以退出瓢阴,上下鍵翻頁(yè)(記錄太多的話)

版本回退
git reset --hard <某個(gè)版本號(hào)>

回退到某個(gè)版本畅蹂,版本號(hào)在git log中查看

回退反悔

當(dāng)回退到某個(gè)版本,然而又反悔了荣恐,想要回到未來(lái)的版本時(shí)
先使用git reflog查看之前的命令記錄魁莉,然后找到對(duì)應(yīng)commit記錄前面的序號(hào)
然后git reset --hard 記錄前面的序號(hào)就可以回退到未來(lái)的版本了

最后

其實(shí)這篇文章是去年項(xiàng)目用git時(shí)做的筆記,同時(shí)也分享給組員募胃,讓大家快速上手。沒(méi)相到這個(gè)暑假實(shí)習(xí)又用到它了畦浓,就把它整理出來(lái)痹束。

當(dāng)然它也僅僅適用于快速上手,想要用好git讶请,特別是版本控制和分支管理的部分祷嘶,還是得去看更高級(jí)的教程。

如果這篇文章能幫到你的話夺溢,我也會(huì)感到很高興的论巍。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市风响,隨后出現(xiàn)的幾起案子嘉汰,更是在濱河造成了極大的恐慌,老刑警劉巖状勤,帶你破解...
    沈念sama閱讀 217,277評(píng)論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件鞋怀,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡持搜,警方通過(guò)查閱死者的電腦和手機(jī)密似,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,689評(píng)論 3 393
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)葫盼,“玉大人残腌,你說(shuō)我怎么就攤上這事∑兜迹” “怎么了抛猫?”我有些...
    開(kāi)封第一講書(shū)人閱讀 163,624評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)脱盲。 經(jīng)常有香客問(wèn)我邑滨,道長(zhǎng),這世上最難降的妖魔是什么钱反? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,356評(píng)論 1 293
  • 正文 為了忘掉前任掖看,我火速辦了婚禮匣距,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘哎壳。我一直安慰自己毅待,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,402評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布归榕。 她就那樣靜靜地躺著尸红,像睡著了一般。 火紅的嫁衣襯著肌膚如雪刹泄。 梳的紋絲不亂的頭發(fā)上外里,一...
    開(kāi)封第一講書(shū)人閱讀 51,292評(píng)論 1 301
  • 那天,我揣著相機(jī)與錄音特石,去河邊找鬼盅蝗。 笑死,一個(gè)胖子當(dāng)著我的面吹牛姆蘸,可吹牛的內(nèi)容都是我干的墩莫。 我是一名探鬼主播,決...
    沈念sama閱讀 40,135評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼逞敷,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼狂秦!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起推捐,我...
    開(kāi)封第一講書(shū)人閱讀 38,992評(píng)論 0 275
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤裂问,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后牛柒,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體愕秫,經(jīng)...
    沈念sama閱讀 45,429評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,636評(píng)論 3 334
  • 正文 我和宋清朗相戀三年焰络,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了戴甩。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,785評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡闪彼,死狀恐怖甜孤,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情畏腕,我是刑警寧澤缴川,帶...
    沈念sama閱讀 35,492評(píng)論 5 345
  • 正文 年R本政府宣布,位于F島的核電站描馅,受9級(jí)特大地震影響把夸,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜铭污,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,092評(píng)論 3 328
  • 文/蒙蒙 一恋日、第九天 我趴在偏房一處隱蔽的房頂上張望膀篮。 院中可真熱鬧,春花似錦岂膳、人聲如沸誓竿。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,723評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)筷屡。三九已至,卻和暖如春簸喂,著一層夾襖步出監(jiān)牢的瞬間毙死,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,858評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工喻鳄, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留规哲,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,891評(píng)論 2 370
  • 正文 我出身青樓诽表,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親隅肥。 傳聞我的和親對(duì)象是個(gè)殘疾皇子竿奏,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,713評(píng)論 2 354

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

  • Git是目前最流行的版本管理系統(tǒng),也是最先進(jìn)的分布式版本控制系統(tǒng)(distributed version cont...
    pro648閱讀 5,699評(píng)論 1 17
  • 以下內(nèi)容是我在學(xué)習(xí)和研究Git時(shí)腥放,對(duì)Git操作的特性泛啸、重點(diǎn)和注意事項(xiàng)的提取、精練和總結(jié)秃症,可以做為Git操作的字典候址,...
    科研者閱讀 4,127評(píng)論 4 50
  • 一、今天學(xué)到了什么种柑? 今天的學(xué)習(xí)讓我認(rèn)清了一個(gè)事實(shí)岗仑,成功者成功的原因和做事方法都差不多,失敗者失敗的原因卻千差萬(wàn)別...
    善圈_天隨子夫閱讀 337評(píng)論 0 0
  • 一.為什么需要藍(lán)海戰(zhàn)略聚请? 在當(dāng)下中國(guó)荠雕,各行各業(yè),已經(jīng)嚴(yán)重產(chǎn)能過(guò)剩驶赏,例如鋼鐵炸卑、水泥、服裝等煤傍,連房子也是特別多的庫(kù)存盖文。...
    胡賢彬閱讀 1,372評(píng)論 0 13
  • 我的夢(mèng)想是成為一個(gè)很會(huì)說(shuō)話的人。 七十年代末我出生于浙南的農(nóng)村蚯姆,按理說(shuō)五续,江南水鄉(xiāng)潤(rùn)澤的大地應(yīng)該養(yǎng)育出一個(gè)水靈靈粉撲...
    兩個(gè)梨窩閱讀 345評(píng)論 0 0