您好,登錄后才能下訂單哦!
Git和傳統(tǒng)版本控制系統(tǒng)的區(qū)別:
傳統(tǒng)版本控制系統(tǒng):
1、將數(shù)據(jù)保存的信息看作是一組基本文件和每個(gè)文件隨時(shí)間逐步累積的差異
2、只記錄發(fā)生改變的數(shù)據(jù)
3、每次克隆只獲取最新的內(nèi)容
Git:
1、將數(shù)據(jù)做成一組快照,每次提交更新,或在Git中保存項(xiàng)目狀態(tài)時(shí),它主要對(duì)當(dāng)時(shí)的全部文件制作一個(gè)快照并保存這個(gè)快照的索引
2、如果文件沒有修改,Git不再重新存儲(chǔ)該文件,而是只保留一個(gè)鏈接指向之前存儲(chǔ)的文件
3、在Git中的絕大多數(shù)操作都只需要訪問本地文件和資源,一般不需要來自網(wǎng)絡(luò)上其它計(jì)算機(jī)的信息
4、Git中所有數(shù)據(jù)在存儲(chǔ)前都計(jì)算校驗(yàn)和,若你在傳送過程中丟失信息或損壞文件,Git 就能發(fā)現(xiàn)
5、Git用以計(jì)算校驗(yàn)和的機(jī)制叫做 SHA-1散列(哈希),它由40個(gè)十六進(jìn)制字符組成字符串,基于Git中文件的內(nèi)容或目錄結(jié)構(gòu)計(jì)算出來
6、Git數(shù)據(jù)庫中保存的信息都是以文件內(nèi)容的哈希值來索引,而不是文件名
7、Git一般只添加數(shù)據(jù)
8、客戶端并不只提取最新版本的文件快照,而是把代碼倉庫完整地鏡像下來,每一次的克隆操作,實(shí)際上都是一次對(duì)代碼倉庫的完整備份
Git的三種狀態(tài):
已提交(committed):表示數(shù)據(jù)已經(jīng)安全的保存在本地?cái)?shù)據(jù)庫中
已修改(modified):表示修改了文件,但還沒保存到數(shù)據(jù)庫中
已暫存(staged):表示對(duì)一個(gè)已修改文件的當(dāng)前版本做了標(biāo)記,使之包含在下次提交的快照中
如果Git目錄中保存著的特定版本文件,就屬于已提交狀態(tài)
如果作了修改并已放入暫存區(qū)域,就屬于已暫存狀態(tài)
如果自上次取出后,作了修改但還沒有放到暫存區(qū)域,就是已修改狀態(tài)
Git項(xiàng)目的三個(gè)工作區(qū):
Git倉庫:是Git用來保存項(xiàng)目的元數(shù)據(jù)和對(duì)象數(shù)據(jù)庫的地方,是Git中最重要的部分,從其它計(jì)算機(jī)克隆倉庫時(shí),拷貝的就是這里的數(shù)據(jù)
工作目錄:是對(duì)項(xiàng)目的某個(gè)版本獨(dú)立提取出來的內(nèi)容,這些從Git倉庫的壓縮數(shù)據(jù)庫中提取出來的文件,放在磁盤上供你使用或修改
暫存區(qū)域:是一個(gè)文件,保存了下次將提交的文件列表信息,一般在Git倉庫目錄中,有時(shí)候也被稱作索引
Git的基本工作流程:
1、在工作目錄中修改文件
2、暫存文件,將文件的快照放入暫存區(qū)域
3、提交更新,找到暫存區(qū)域的文件,將快照永久性存儲(chǔ)到Git倉庫目錄
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。