在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Git是什么

汽車(chē)電子技術(shù) ? 來(lái)源:嵌入式之入坑筆記 ? 作者: 嵌入式之入坑筆記 ? 2023-02-10 11:23 ? 次閱讀

Git是一個(gè)免費(fèi)的、開(kāi)源的分布式版本控制系統(tǒng),可以用于記錄一個(gè)或者若干個(gè)文件內(nèi)容的變化,方便查閱或者修改。

Git官網(wǎng):https://git-scm.com/

1、常見(jiàn)的版本控制系統(tǒng)

1.1、集中式版本控制系統(tǒng)(SVN、CVS、perforce)

集中式版本控制系統(tǒng)的示意圖如下:

pYYBAGPluGiAFKQ0AACuICnLywg720.png

特點(diǎn):

1)一定會(huì)有一個(gè)中央服務(wù)器;

2)優(yōu)點(diǎn)在于所有用戶(hù)都可以看到最新更新的文件或者記錄,管理員也很方便掌握每個(gè)人的權(quán)限;

3)缺點(diǎn)是如果中央服務(wù)器出故障的時(shí)候,所有用戶(hù)都不能進(jìn)行上傳、下載、更新等;

1.2、分布式版本控制系統(tǒng)(Git、BitKeeper)

分布式版本控制系統(tǒng)的示意圖如下:

poYBAGPluH2ADkVOAAC17Slukic083.png

每個(gè)客戶(hù)端都有備份和記錄,大家都可以查看到版本記錄和修改以后的記錄。

分布式版本控制系統(tǒng)存放的不是版本與版本之間的差異,而是版本的索引

2、Git的工作區(qū)、暫存區(qū)、版本庫(kù)

使用Git時(shí)對(duì)其工作區(qū)、暫存區(qū)和版本庫(kù)這三個(gè)的概念是很有必要了解的,了解這三個(gè)概念有助于對(duì)Git的工作過(guò)程有一個(gè)比較明確的認(rèn)知。那這三個(gè)概念都是些什么意思呢?

1)工作區(qū):

就是在電腦上能看到的目錄或者文件。簡(jiǎn)單而言就是你的本地文件。

2)暫存區(qū)(stage 或 index):

一般存放在

.git

目錄下的 index 文件(.git/index)中,所以也可以把暫存區(qū)叫作索引(index)。

3)版本庫(kù):

工作區(qū)中有一個(gè)隱藏目錄.git,這個(gè)不算工作區(qū),而是 Git 的版本庫(kù)。

工作區(qū)、版本庫(kù)中的暫存區(qū)和版本庫(kù)之間的關(guān)系如下圖所示:

poYBAGPluImADhsaAAIiXOV64j0627.png

上圖中左側(cè)為工作區(qū),右側(cè)為版本庫(kù)。在版本庫(kù)中標(biāo)記為 "index" 的區(qū)域是暫存區(qū)(stage/index),標(biāo)記為 "master" 的是 master 分支所代表的目錄樹(shù)。

上圖中可以看到,此時(shí) "HEAD" 實(shí)際是指向 master 分支的一個(gè)"指針"。所以圖中的命令中出現(xiàn) HEAD 的地方是可以用 master 來(lái)替換。

上圖中的 objects 標(biāo)識(shí)的區(qū)域?yàn)?Git 的對(duì)象庫(kù),位于 ".git/objects" 目錄下,里面包含了創(chuàng)建的各種對(duì)象及內(nèi)容。

2.1、一些指令執(zhí)行時(shí)所存在的關(guān)聯(lián)

2.1.1、向暫存區(qū)追加文件。

 git add xxx

使用 git add 命令時(shí),是對(duì)工作區(qū)修改(或新增)的文件進(jìn)行操作的,會(huì)將暫存區(qū)的目錄樹(shù)更新。

同時(shí),工作區(qū)修改(或新增)的文件內(nèi)容會(huì)被寫(xiě)入到對(duì)象庫(kù)中的一個(gè)新的對(duì)象中,而該對(duì)象的ID被記錄在暫存區(qū)的文件索引中。

2.1.2、暫存區(qū)文件上傳版本庫(kù)。

git commit -m "描述"

當(dāng)執(zhí)行提交操作

git commit

時(shí),會(huì)將暫存區(qū)的目錄樹(shù)寫(xiě)到版本庫(kù)中,master 分支會(huì)做相應(yīng)的更新。即 master 指向的目錄樹(shù)就是提交時(shí)暫存區(qū)的目錄樹(shù)。

2.1.3、版本回退。

git reset HEAD

當(dāng)執(zhí)行

git reset HEAD

命令時(shí),暫存區(qū)的目錄樹(shù)會(huì)被重寫(xiě),被 master 分支指向的目錄樹(shù)所替換,但是工作區(qū)不受影響。

2.1.4、刪除文件。

git rm --cached 

1)當(dāng)執(zhí)行

git rm --cached

命令時(shí),會(huì)直接從暫存區(qū)刪除文件,工作區(qū)則不做出改變。

2.1.5、檢出文件

git checkout .  或  git checkout -- 

1)當(dāng)執(zhí)行

git checkout .

會(huì)用暫存區(qū)全部的文件替換工作區(qū)的文件。或者

git checkout --

命令時(shí),會(huì)用暫存區(qū)指定的文件替換工作區(qū)的文件。這個(gè)操作是很危險(xiǎn),會(huì)清除工作區(qū)中未添加到暫存區(qū)的改動(dòng)。

git checkout HEAD .  或者  git checkout HEAD 

2)當(dāng)執(zhí)行

git checkout HEAD .

會(huì)用 HEAD 指向的 master 分支中的全部文件替換暫存區(qū)和以及工作區(qū)中的文件。或者

git checkout HEAD

命令時(shí),會(huì)用 HEAD 指向的 master 分支中的部分文件替換暫存區(qū)和以及工作區(qū)中的文件。這個(gè)命令也是極具危險(xiǎn)性的,因?yàn)椴坏珪?huì)清除工作區(qū)中未提交的改動(dòng),也會(huì)清除暫存區(qū)中未提交的改動(dòng)。

3、代碼托管中心

除了本地庫(kù)可以保存版本的信息以外,為了更加方便使用,可以在代碼托管平臺(tái)中創(chuàng)建遠(yuǎn)程庫(kù),將本地庫(kù)和遠(yuǎn)程庫(kù)建立連接,實(shí)現(xiàn)遠(yuǎn)程協(xié)同的開(kāi)發(fā)。它的好處有:

1)方便團(tuán)隊(duì)內(nèi)部合作開(kāi)發(fā)項(xiàng)目、共同項(xiàng)目管理;

2)方便跨團(tuán)隊(duì)之間的項(xiàng)目開(kāi)發(fā)合作,使得不同公司、組織之間的合作開(kāi)發(fā)可以方便的進(jìn)行。

4、Git的工作流程

Git的工作流程可以歸納如下圖所示:

pYYBAGPluJiAYIVIAAD8WGFyFxE087.png

總的來(lái)說(shuō):Git是一個(gè)很方便的代碼托管平臺(tái),使用者可以在遠(yuǎn)程服務(wù)器上建立屬于自己的項(xiàng)目資源管理庫(kù),實(shí)現(xiàn)遠(yuǎn)程和本地的資源同步,本地添加、修改的文件可以及時(shí)更新到遠(yuǎn)程服務(wù)器上保存管理。同時(shí)也可以便利于多人協(xié)作開(kāi)發(fā),及時(shí)更新最新的資源庫(kù)文件當(dāng)本地的工作區(qū),及時(shí)知曉最新的更新進(jìn)度,加快開(kāi)發(fā)的進(jìn)度。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 控制系統(tǒng)
    +關(guān)注

    關(guān)注

    41

    文章

    6758

    瀏覽量

    111807
  • 開(kāi)源
    +關(guān)注

    關(guān)注

    3

    文章

    3612

    瀏覽量

    43488
  • Git
    Git
    +關(guān)注

    關(guān)注

    0

    文章

    203

    瀏覽量

    16115
收藏 人收藏

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    Git常用的超級(jí)實(shí)用命令

    Git作為最流行的代碼版本控制工具,基本上已經(jīng)成為了程序員的一個(gè)標(biāo)配技能。無(wú)論使用GitHub,GitLib,Gitee等進(jìn)行代碼托管,均基于Git。下面聊一聊開(kāi)發(fā)人員必會(huì)的幾個(gè)Git技巧和團(tuán)隊(duì)協(xié)作
    的頭像 發(fā)表于 10-09 17:19 ?1364次閱讀
    <b class='flag-5'>Git</b>常用的超級(jí)實(shí)用命令

    git命令的基本使用

    git config 第一次使用git或者剛安裝的git時(shí),使用此命令設(shè)置身份Name 和 Eamail 地址。并且每次提交時(shí)會(huì)使用此信息。
    的頭像 發(fā)表于 12-11 13:53 ?1176次閱讀

    Pro_Git中文版

    代碼版本管理軟件GIT的詳細(xì)使用教程,GIT上手比較慢,不看資料很難上手
    發(fā)表于 07-20 17:21 ?0次下載

    Git是什么?Git的基本使用資料說(shuō)明

      Git是什么? Git是目前世界上最先進(jìn)的分布式版本控制系統(tǒng)(沒(méi)有之一)。
    發(fā)表于 05-29 17:56 ?1次下載
    <b class='flag-5'>Git</b>是什么?<b class='flag-5'>Git</b>的基本使用資料說(shuō)明

    騰訊是如何使用Git

    那么,切換到 git 來(lái)維護(hù)代碼倉(cāng)庫(kù),會(huì)對(duì)我們的日常開(kāi)發(fā)造成影響嗎?答應(yīng)是顯然的,首先我們需要學(xué)習(xí) git 的基本概念與用法,然后就需要我們?cè)诰唧w的項(xiàng)目實(shí)踐過(guò)程中打磨我們的 git 使用技巧
    的頭像 發(fā)表于 08-10 15:02 ?2701次閱讀
    騰訊是如何使用<b class='flag-5'>Git</b>?

    Git的參考手冊(cè)教程免費(fèi)下載

    在使用Git前我們需要先安裝 GitGit 目前支持 Linux/Unix、Solaris、Mac和 Windows 平臺(tái)上運(yùn)行。
    發(fā)表于 09-21 08:00 ?1次下載
    <b class='flag-5'>Git</b>的參考手冊(cè)教程免費(fèi)下載

    git 總結(jié)

    一、git代碼拉取@TOC1.獲取代碼地址:EP33: recursive ssh://172.29.169.30:29418/MCU/SCC -b v2.0-saic-ep332.步驟:&
    發(fā)表于 12-08 11:21 ?10次下載
    <b class='flag-5'>git</b> 總結(jié)

    Git權(quán)威指南

    Git管理資料,方便大家學(xué)習(xí)git知識(shí)
    發(fā)表于 06-29 14:15 ?0次下載

    利用Learn Git Branching輕松學(xué)習(xí)Git

    Git作為世界上最流行的版本控制系統(tǒng),可以說(shuō)是每一位與程序打交道的朋友最值得學(xué)習(xí)的軟件之一。除了管理自己的項(xiàng)目,如果你對(duì)參與開(kāi)源項(xiàng)目感興趣,那么Git更是聯(lián)結(jié)Github、Gitlab等知名代碼項(xiàng)目
    的頭像 發(fā)表于 09-15 14:53 ?1883次閱讀

    Git的使用

    Git的使用
    的頭像 發(fā)表于 01-10 16:45 ?1106次閱讀

    git rebase與相關(guān)git merge命令比較

    ? #前言 ??? git rebase命令經(jīng)常被認(rèn)為是Git的巫術(shù),初學(xué)者應(yīng)該遠(yuǎn)離它,但它實(shí)際上可以讓開(kāi)發(fā)團(tuán)隊(duì)在使用時(shí)更加輕松。今天,我們將git rebase與相關(guān)git merg
    的頭像 發(fā)表于 05-26 16:22 ?1262次閱讀
    <b class='flag-5'>git</b> rebase與相關(guān)<b class='flag-5'>git</b> merge命令比較

    git rebase和git merge的區(qū)別

    ? 解決沖突 git rebase和git merge的區(qū)別 分支合并 git merge是用來(lái)合并兩個(gè)分支的。 比如:將 b 分支合并到當(dāng)前分支。 同樣git rebase b,也是
    的頭像 發(fā)表于 07-05 09:54 ?843次閱讀
    <b class='flag-5'>git</b> rebase和<b class='flag-5'>git</b> merge的區(qū)別

    Git是什么 Git介紹

    git 是什么? Git 誕生于 2005 年,是一款免費(fèi)、開(kāi)源、分布式版本控制系統(tǒng)。 直接記錄快照,而非差異比較 Git 和其它版本控制系統(tǒng)的主要差別在于 Git 對(duì)待數(shù)據(jù)的方式。
    的頭像 發(fā)表于 07-22 10:50 ?2145次閱讀
    <b class='flag-5'>Git</b>是什么 <b class='flag-5'>Git</b>介紹

    Git命令的綜合手冊(cè)怎么找

    若你使用 Git 時(shí)需要獲取幫助,有三種等價(jià)的方法可以找到 Git 命令的綜合手冊(cè)(manpage): $ git help $ git -- help $ man
    的頭像 發(fā)表于 07-22 11:02 ?836次閱讀

    git基本操作命令用法

    基本用法 上面的四條命令在工作目錄、暫存目錄(也叫做索引)和倉(cāng)庫(kù)之間復(fù)制文件。 git add files把當(dāng)前文件放入暫存區(qū)域。 git commit給暫存區(qū)域生成快照并提交。 git reset
    的頭像 發(fā)表于 09-13 16:29 ?968次閱讀
    <b class='flag-5'>git</b>基本操作命令用法
    主站蜘蛛池模板: 欧美色伊人 | 一级视频在线 | 手机看片1024欧美 | 欧美区一区| 久久久噜久噜久久综合 | 久久精品视频观看 | 色综合久久五月 | 99久久精品费精品国产 | 成人黄色免费网站 | 午夜影院在线观看视频 | 999久久久免费精品国产牛牛 | avbobo在线| 免费视频一区二区性色 | 亚洲视频五区 | 深夜释放自己vlog糖心旧版本 | 亚洲人成www在线播放 | 国内精品久久久久久久久蜜桃 | 伊人久久亚洲综合 | 五月婷婷六月色 | 午夜影院日韩 | 欧美一区二区在线观看视频 | 高清毛片一区二区三区 | 在线 你懂 | 黄色成人一级片 | 午夜在线播放 | 久久综合免费 | 色偷偷88欧美精品久久久 | 99精品福利 | 日韩有码电影 | 天天摸天天碰成人免费视频 | 天堂影院jav成人天堂免费观看 | 免费看a| tom影院亚洲国产 | 青青伊人91久久福利精品 | 国产乱人视频免费播放 | 日本亚洲精品色婷婷在线影院 | 色婷婷激情 | 性欧美精品 | 国产在线精品一区二区夜色 | 国产一级特黄一级毛片 | 色视频网站人成免费 |