git版本管理

本教程主要是對(duì)廖大神的教程進(jìn)行的整理廖雪峰

一、分布式管理



二、git命令

1.安裝

1)Debian或Ubuntu Linux上
sudo apt-get install git

2)如果是其他Linux版本,可以直接通過源碼安裝。先從Git官網(wǎng)下載源碼亲雪,然后解壓,依次輸入:./config疚膊,make义辕,sudo make install這幾個(gè)命令安裝就好了

3)在Windows上安裝Git,在Windows上使用Git寓盗,可以從Git官網(wǎng)直接下載安裝程序灌砖,(網(wǎng)速慢的同學(xué)請(qǐng)移步國(guó)內(nèi)鏡像),然后按默認(rèn)選項(xiàng)安裝即可傀蚌。安裝完成后基显,在開始菜單里找到“Git”->“Git Bash”,蹦出一個(gè)類似命令行窗口的東西善炫,就說明Git安裝成功撩幽!

安裝之后使用命令

$ git config --global user.name"Your Name"$ git config --global user.email"email@example.com"

2.創(chuàng)建版本庫

創(chuàng)建目錄,pwd查看箩艺,通過git init變成git可管理倉庫
$ mkdir learngit

$ cd learngit

$ pwd

$git init

3.添加文件到版本庫

創(chuàng)建文本文件窜醉,并把它提交到倉庫上,注意這個(gè)文本在git目錄下艺谆,git status可以查看狀態(tài)榨惰,是否已修改git diff可以查看做了什么修改,git log可以查看各種版本提交日志

$git add readme.txt

$ gitcommit-m"wrote a readme file"

$ git status

$ git diff readme.txt

$ git log

4.版本回退

HEAD表示當(dāng)前版本静汤,HEAD^是回退上一版本琅催,HEAD^^回退上上個(gè)版本居凶。要是后悔回退了,可以用git reflog查看移除版本的commod id然后恢復(fù)

$ git reset--hard HEAD^

$git reflog

5.撤銷修改

沒add的時(shí)候可以checkout撤銷
$ git checkout -- readme.txt

add之后的撤銷:$ git resetHEAD readme.txt

丟棄工作區(qū)的修改

$ git checkout-- readme.txt

6.刪除文件

刪除并提交到工作區(qū):$ git rm test.txtrm 'test.txt'$ gitcommit-m"remove test.txt"

撤銷刪除:$ git checkout -- test.txt

三恢暖、git的工作區(qū)和暫存區(qū)

工作區(qū)就是leangit目錄排监,暫存區(qū)就在.git目錄的版本庫的一個(gè)區(qū),git add時(shí)添加到暫存區(qū)杰捂,git -commit添加到工作去



每次修改舆床,如果不用git add到暫存區(qū),那就不會(huì)加入到工作區(qū)中嫁佳。

四挨队、遠(yuǎn)程倉庫

github

1.創(chuàng)建SSH

在用戶主目錄下,看看有沒有.ssh目錄蒿往,如果有盛垦,再看看這個(gè)目錄下有沒有id_rsa和id_rsa.pub這兩個(gè)文件,如果已經(jīng)有了瓤漏,可直接跳到下一步腾夯。如果沒有,打開Shell(Windows下打開Git Bash)蔬充,創(chuàng)建SSH Key:$ ssh-keygen -t rsa -C"youremail@example.com"蝶俱,登陸GitHub,打開“Account settings”饥漫,“SSH Keys”頁面:然后榨呆,點(diǎn)“Add SSH Key”,填上任意Title庸队,在Key文本框里粘貼id_rsa.pub文件的內(nèi)容积蜻,然后就可以創(chuàng)建好了,SSH就是保證安全性的彻消。

2.添加到遠(yuǎn)程倉庫

create reposttiry,然后關(guān)聯(lián)竿拆,michaelliao改成自己的賬號(hào),push就可以推上去了

$ git remote add origin git@github.com:michaelliao/learngit.git

$ git push -u origin master

以后只要本地提交了就可以執(zhí)行命令:$ git push origin master

出現(xiàn)過這樣的失敗宾尚,原因是不同步丙笋,本地沒有READMD.md

解決辦法git pull --rebase origin master

查看遠(yuǎn)程倉庫

$ git remote -v

解除關(guān)聯(lián)

$ git remote rm?github

3.從遠(yuǎn)程倉庫克隆

可以克隆到本地
$ git clone git@github.com:michaelliao/gitskills.git


五.分支管理

1.創(chuàng)建分支及基本使用


就是創(chuàng)建自己能看到的分支,項(xiàng)目管理中別人看不到你的分支

$ git checkout -b dev相當(dāng)于下面兩條指令央勒,創(chuàng)建分支并切換

$ git branch dev

$ git checkout dev

然后用$ git branch查看當(dāng)前分支,在分支修改后的提交$ git add readme.txt$ git commit -m"branch test"

切回master:$ git checkout master

將分支的結(jié)果合并:$ git merge dev

刪除分支:$ git branch -d dev

六澳化、實(shí)際應(yīng)用

項(xiàng)目要上傳到github中來進(jìn)行項(xiàng)目協(xié)作

1.先建本地的git倉庫


2.新建一個(gè)github倉庫崔步,注意不要新建readmd,因?yàn)楹竺骊P(guān)聯(lián)到遠(yuǎn)程庫的時(shí)候如果遠(yuǎn)程庫初始信息和本地不一致就會(huì)報(bào)錯(cuò)缎谷。

3.把項(xiàng)目文件加到git倉庫目錄下,再加到git里井濒,然后commit提交


4.與遠(yuǎn)程倉庫建立聯(lián)系以及解除關(guān)聯(lián)



5.本地倉庫push進(jìn)遠(yuǎn)程庫

6.發(fā)布更新:

git status

git add *

git commit -m "發(fā)布更新"

git pull

git push origin master

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末灶似,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子瑞你,更是在濱河造成了極大的恐慌酪惭,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,607評(píng)論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件者甲,死亡現(xiàn)場(chǎng)離奇詭異春感,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)虏缸,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,239評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門鲫懒,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人刽辙,你說我怎么就攤上這事窥岩。” “怎么了宰缤?”我有些...
    開封第一講書人閱讀 164,960評(píng)論 0 355
  • 文/不壞的土叔 我叫張陵颂翼,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我慨灭,道長(zhǎng)朦乏,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,750評(píng)論 1 294
  • 正文 為了忘掉前任缘挑,我火速辦了婚禮集歇,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘语淘。我一直安慰自己诲宇,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,764評(píng)論 6 392
  • 文/花漫 我一把揭開白布惶翻。 她就那樣靜靜地躺著姑蓝,像睡著了一般捺球。 火紅的嫁衣襯著肌膚如雪吨铸。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,604評(píng)論 1 305
  • 那天非剃,我揣著相機(jī)與錄音颅筋,去河邊找鬼宙暇。 笑死,一個(gè)胖子當(dāng)著我的面吹牛议泵,可吹牛的內(nèi)容都是我干的占贫。 我是一名探鬼主播,決...
    沈念sama閱讀 40,347評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼先口,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼型奥!你這毒婦竟也來了瞳收?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,253評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤厢汹,失蹤者是張志新(化名)和其女友劉穎螟深,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體烫葬,經(jīng)...
    沈念sama閱讀 45,702評(píng)論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡界弧,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,893評(píng)論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了厘灼。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片夹纫。...
    茶點(diǎn)故事閱讀 40,015評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖设凹,靈堂內(nèi)的尸體忽然破棺而出舰讹,到底是詐尸還是另有隱情,我是刑警寧澤闪朱,帶...
    沈念sama閱讀 35,734評(píng)論 5 346
  • 正文 年R本政府宣布月匣,位于F島的核電站,受9級(jí)特大地震影響奋姿,放射性物質(zhì)發(fā)生泄漏锄开。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,352評(píng)論 3 330
  • 文/蒙蒙 一称诗、第九天 我趴在偏房一處隱蔽的房頂上張望萍悴。 院中可真熱鬧,春花似錦寓免、人聲如沸癣诱。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,934評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽撕予。三九已至,卻和暖如春蜈首,著一層夾襖步出監(jiān)牢的瞬間实抡,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,052評(píng)論 1 270
  • 我被黑心中介騙來泰國(guó)打工欢策, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留吆寨,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,216評(píng)論 3 371
  • 正文 我出身青樓踩寇,卻偏偏與公主長(zhǎng)得像啄清,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子姑荷,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,969評(píng)論 2 355

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