git 簡介

Git是什么

git是目前最先進的分布式版本控制系統(tǒng),它的核心架構(gòu)如下圖所示,分為四個核心區(qū)域膝藕。git的常用命令主要是關于這四個區(qū)域式廷。

image.png
  • 本地工作區(qū)-work
    本地工作區(qū)就是我們實際電腦中的文件夾以及文件。

  • 緩存區(qū)-index
    英文叫stage, 或index芭挽。一般存放在 ".git目錄下" 下的index文件(.git/index)中滑废,所 以我們把暫存區(qū)有時也叫作索引(index)

  • 本地倉庫-resp
    工作區(qū)有一個隱藏目錄.git,這個不算工作區(qū)袜爪,而是Git的版本庫

  • 遠程倉庫-remote
    相對于本地倉庫只能你一個人訪問蠕趁,在需要多人協(xié)作的時候功能可以再公有網(wǎng)絡上建立一個倉庫,提供大家一起訪問

常用基本命令

  1. 初始化一個git倉庫辛馆,默認為當前目錄也可以指定目錄

git init
git init repo-name

  1. 基于遠處倉庫初始化本地倉庫俺陋。基于遠程鏈接初始化本地倉庫,也可以指定本地倉庫的地址

git clone url
git clone url directory

3.查看在你上次提交之后是否有修改倔韭。使用該命令的時候加了 -s 參數(shù)术浪,以獲得簡短的結(jié)果輸出。

git status
git status -s

4.查看執(zhí)行 git status 的結(jié)果的詳細信息

git diff 查看尚未緩存的修改
git diff -cached 查看已經(jīng)緩存的改動
git diff HEAD 查看已經(jīng)緩存和未緩存的改動
git diff --stat 顯示摘要而非整個diff

5.刪除文件寿酌,刪除之后務必要提交

git rm file 刪除工作區(qū)和暫存區(qū)
git rm -f file 修改未提交時需要強制刪除
git rm --cached file 只刪除緩存區(qū)不刪除工作區(qū)
git rm -r * 遞歸刪除

本地工作區(qū)和其他區(qū)域交互常用命令

  1. 與緩存區(qū)交互

git add file 將工作區(qū)指定新增內(nèi)容或者修改內(nèi)容提交到緩存區(qū)胰苏。
git add . 包括所有內(nèi)容,名字可以使用匹配表達式(*.sh)
git checkout file 將緩存區(qū)的file覆蓋工作區(qū)

  1. 與本地倉庫交互

git checkout HEAD file 從本地倉庫中檢出文件醇疼,會覆蓋緩存區(qū)和工作區(qū)
git commit -am file 直接將工作區(qū)文件提交本地倉庫省略了git add這一步

  1. 與遠程倉庫及交互

git pull origin next:master 取回遠程主機origin的next分支的更新硕并,再與本地的master分支合并,同時更新了工作區(qū)秧荆、緩存區(qū)倔毙、本地倉庫
git pull 如果當前分支只有一個追蹤分支,連遠程主機名都可以省

緩存區(qū)和其他區(qū)域交互常用命令

  1. 與本地倉庫交互

git commit -m file 指定文件暫存區(qū)里的改動給提交到本地的版本庫
git reset file 本地倉庫和緩存區(qū)回退到上一個版本乙濒,本地工作區(qū)內(nèi)容不變
git reset -soft file 本地倉庫回退版本陕赃,可直接commit
git reset -hard file 徹底回退版本,工作區(qū)內(nèi)容被覆蓋

本地倉庫和其他區(qū)域交互常用命令

  1. 與遠程倉庫交互

git remote 管理遠程倉庫的工作颁股,包括添加遠程庫么库,移除廢棄的遠程庫,管理各式遠程庫分支甘有,定義是否跟蹤這些分支
git push 將本地倉庫的更新推送至遠程倉庫
git fetch 獲取遠程倉庫的更新到本地倉庫

git 文件的狀態(tài)標識

  • A: 你本地暫存區(qū)新增的文件(本地倉庫中沒有).

  • C: 文件的一個新拷貝.

  • D: 你本地刪除的文件(服務器上還在).

  • M: 工作區(qū)文件的內(nèi)容或者mode被修改了.

  • R: 文件名被修改了诉儒。

  • T: 文件的類型被修改了。

  • U: 文件沒有被合并(你需要完成合并才能進行提交)亏掀。

  • X: 未知狀態(tài)(很可能是遇到git的bug了忱反,你可以向git提交bug report)。

Git 和SVN

在直觀的使用層面我們可以發(fā)現(xiàn)git是分布式的,svn是集中式的滤愕。我們在使用git的時候無需搭建服務器即可以進行版本控制温算,只有在需要多人共享的時候,才需要服務器端该互。而SVN必須是有一個服務器端米者。
git 和 svn 對文件版本控制的方式也不同,這一點對使用者來說是透明的
如果你有svn的使用經(jīng)驗宇智,在windows環(huán)境下蔓搞,推薦使用TortoiseGit,git圖形客戶端随橘。上手較為方便喂分,但是也需要了解git的結(jié)構(gòu)以及基本命令。


以上內(nèi)容只是對git做了一個簡單的介紹机蔗,在后續(xù)的使用過程中有機會了會對各個命令做詳細的介紹蒲祈。


?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末甘萧,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子梆掸,更是在濱河造成了極大的恐慌扬卷,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,490評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件酸钦,死亡現(xiàn)場離奇詭異怪得,居然都是意外死亡,警方通過查閱死者的電腦和手機卑硫,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,581評論 3 395
  • 文/潘曉璐 我一進店門徒恋,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人欢伏,你說我怎么就攤上這事入挣。” “怎么了硝拧?”我有些...
    開封第一講書人閱讀 165,830評論 0 356
  • 文/不壞的土叔 我叫張陵径筏,是天一觀的道長。 經(jīng)常有香客問我河爹,道長匠璧,這世上最難降的妖魔是什么桐款? 我笑而不...
    開封第一講書人閱讀 58,957評論 1 295
  • 正文 為了忘掉前任咸这,我火速辦了婚禮,結(jié)果婚禮上魔眨,老公的妹妹穿的比我還像新娘媳维。我一直安慰自己,他們只是感情好遏暴,可當我...
    茶點故事閱讀 67,974評論 6 393
  • 文/花漫 我一把揭開白布侄刽。 她就那樣靜靜地躺著,像睡著了一般朋凉。 火紅的嫁衣襯著肌膚如雪州丹。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,754評論 1 307
  • 那天杂彭,我揣著相機與錄音墓毒,去河邊找鬼。 笑死亲怠,一個胖子當著我的面吹牛所计,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播团秽,決...
    沈念sama閱讀 40,464評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼主胧,長吁一口氣:“原來是場噩夢啊……” “哼叭首!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起踪栋,我...
    開封第一講書人閱讀 39,357評論 0 276
  • 序言:老撾萬榮一對情侶失蹤焙格,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后夷都,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體间螟,經(jīng)...
    沈念sama閱讀 45,847評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡驴娃,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,995評論 3 338
  • 正文 我和宋清朗相戀三年抄课,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片扫皱。...
    茶點故事閱讀 40,137評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡治拿,死狀恐怖摩泪,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情劫谅,我是刑警寧澤见坑,帶...
    沈念sama閱讀 35,819評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站捏检,受9級特大地震影響荞驴,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜贯城,卻給世界環(huán)境...
    茶點故事閱讀 41,482評論 3 331
  • 文/蒙蒙 一熊楼、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧能犯,春花似錦鲫骗、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,023評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至渡蜻,卻和暖如春术吝,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背茸苇。 一陣腳步聲響...
    開封第一講書人閱讀 33,149評論 1 272
  • 我被黑心中介騙來泰國打工排苍, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人税弃。 一個月前我還...
    沈念sama閱讀 48,409評論 3 373
  • 正文 我出身青樓纪岁,卻偏偏與公主長得像,于是被迫代替她去往敵國和親则果。 傳聞我的和親對象是個殘疾皇子幔翰,可洞房花燭夜當晚...
    茶點故事閱讀 45,086評論 2 355

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

  • Git 基礎 基本原理 客戶端并不是只提取最新版本的文件快照漩氨,而是把代碼倉庫完整的鏡像下來。這樣一來遗增,任何一處協(xié)同...
    __silhouette閱讀 15,887評論 5 147
  • Git 命令行學習筆記 Git 基礎 基本原理 客戶端并不是只提取最新版本的文件快照叫惊,而是把代碼倉庫完整的鏡像下來...
    sunnyghx閱讀 3,922評論 0 11
  • git作為時下最流行的代碼管理工具,Git權(quán)威指南總結(jié)了十條喜歡Git的理由: 異地協(xié)同工作做修; 現(xiàn)場版本控制霍狰; 重...
    古斟布衣閱讀 1,826評論 0 12
  • 1,查看所有遠程分支:%git branch -r 2, 拉取遠程分支并創(chuàng)建本地分支git checkout -...
    will666閱讀 2,069評論 0 18
  • 不知怎么饰及,最近很焦慮蔗坯,內(nèi)心沒有充實感。不知大家是否也有這樣的感受燎含,自己的內(nèi)心有無數(shù)的大戲在開展宾濒,但是回到家中,早已...
    大眼鼠日記閱讀 434評論 0 0