關(guān)于Git的一些基本概念︱#101計(jì)劃#NO.012

題記:前段時(shí)間有關(guān)注Git版本控制的相關(guān)內(nèi)容,準(zhǔn)備自己搭建一個(gè)網(wǎng)站,順手記了一些git學(xué)習(xí)的筆記,今天發(fā)出來,一起學(xué)習(xí)下。

git

1. 500 字說說 Git 的前生今世。

Git是一款免費(fèi)、開源的分布式版本控制系統(tǒng)。神一樣的人物L(fēng)inus創(chuàng)造了Linux這個(gè)世界最大的開源操作系統(tǒng),但是這個(gè)系統(tǒng)的內(nèi)核代碼非常多,需要一個(gè)地方集中托管,Linus 先后嘗試自己管理、集中托管、商業(yè)軟件的版本控制等方法,但最終都不是很如人意,于是這個(gè)牛逼的大神,自己寫了一個(gè)關(guān)于代碼托管的版本控制系統(tǒng)Git,后來這個(gè)系統(tǒng)由Github公司推廣到全世界,現(xiàn)在是大多數(shù)程序員托管自己代碼和開源項(xiàng)目的集中地。

2. 舉例說明集中式與分布式版本控制的區(qū)別是什么?

比如說我和網(wǎng)上的幾個(gè)好哥們共同寫一本書。
集中式的版本控制就是說我們所有人的寫作內(nèi)容都存放在某一個(gè)人的電腦里面,當(dāng)我開始寫作的時(shí)候,我需要訪問存放底稿的電腦,我寫完了,要上傳修改后的底稿到這臺(tái)電腦中。別人也是一樣的。
分布式的版本控制就是我們所有人的電腦上都存放一份這本書的內(nèi)容,在自己電腦隨時(shí)修改,改完后可以和對(duì)方交換內(nèi)容,更新內(nèi)容,更新后我們?nèi)司屯瑫r(shí)有一份完整的書籍底稿。
集中式需要保持聯(lián)網(wǎng),而且如果服務(wù)器壞掉,數(shù)據(jù)丟失風(fēng)險(xiǎn)較大;
分布式可以線下獨(dú)立,如果電腦當(dāng)?shù)?,可以從別人那里取得完整的數(shù)據(jù)。

3. 用淺顯易懂的語(yǔ)言說明“工作區(qū)”、“暫存區(qū)”與“版本區(qū)”的含義與互相關(guān)系是什么?

  • 工作區(qū)是文件系統(tǒng)中存在的一個(gè)目錄,這個(gè)目錄是可以看到的,比如說其中一個(gè)目錄叫做“產(chǎn)品經(jīng)理”,這個(gè)是我用來產(chǎn)品經(jīng)理所有文字;工作區(qū)展示的產(chǎn)品經(jīng)理這本書的章節(jié)結(jié)構(gòu)(分支的展示),其中里面有個(gè)隱藏目錄.git是版本庫(kù)。
  • 版本庫(kù)打開版本庫(kù)看到的是工作區(qū)的處理后臺(tái),我在后臺(tái)做過編輯并commit之后,更改的內(nèi)容就會(huì)展示在工作區(qū)。
  • 暫存區(qū)是當(dāng)我打開版本庫(kù)里面的一個(gè)分支進(jìn)行修改的時(shí)候呈現(xiàn)的一種狀態(tài),我編輯產(chǎn)品經(jīng)理這本書的第一章的時(shí)候第一章就變成了暫存區(qū)。當(dāng)我保存commit的時(shí)候,暫存區(qū)的內(nèi)容就清空了。

4. 舉例演示如何讓遠(yuǎn)程庫(kù)與本地版本同步?

我為了寫一本關(guān)于產(chǎn)品經(jīng)理的書籍,于是我在本地建立了一個(gè)命名為產(chǎn)品經(jīng)理的庫(kù),這個(gè)庫(kù)是本地庫(kù)。為了安全和協(xié)同,我把本地庫(kù)的內(nèi)容上傳了github網(wǎng)站進(jìn)行托管,github上就是我的遠(yuǎn)程庫(kù)。
這個(gè)遠(yuǎn)程庫(kù)可以通過clone命令供我在其他地點(diǎn)或者其他協(xié)作者下載到本地進(jìn)行修改編輯。修改完的內(nèi)容還可以上傳到遠(yuǎn)程庫(kù)中。

5. 如何運(yùn)用分支管理實(shí)現(xiàn)多人協(xié)作?

我和幾個(gè)朋友合作寫一本書,當(dāng)我們多個(gè)人編輯同一個(gè)目錄的時(shí)候,容易亂,我們通過分支的功能,每個(gè)人從中選擇一個(gè)章節(jié),先各自編輯,當(dāng)我們編輯完成之后,把某個(gè)章節(jié)的的內(nèi)容并到總目錄中,就可以拼接成一個(gè)完整的數(shù)據(jù)。類似于我們從一本書中挑走幾個(gè)章節(jié)分開來寫然后拼湊起來,而不是我們都編寫統(tǒng)一的全書章節(jié)。

6. Git和自己的關(guān)系可能是什么,至少提出5種?

  • 使用git管理自己寫作的東西:代碼、文字等
  • 參與git中的開源項(xiàng)目,和別人共同完成某個(gè)任務(wù)
  • 使用git來實(shí)現(xiàn)團(tuán)隊(duì)內(nèi)部的溝通和協(xié)助,任務(wù)的推進(jìn)
  • 使用別人開源的git庫(kù)內(nèi)容方便地創(chuàng)建自己的庫(kù)
  • 觀摩學(xué)習(xí)別人放在github上的優(yōu)質(zhì)內(nèi)容
  • 使用git和別人進(jìn)行互動(dòng),社交
  • 在git上開發(fā)和展示自己的課程,事實(shí)在線教學(xué)

7. 整理一份給小白學(xué)習(xí)的 Git 教程大綱。

  • git的介紹
  • git的作用
  • git的核心概念
  • git的使用案例

后記:本篇文章主要參考廖雪峰-Git教程,如果大家感興趣可以進(jìn)一步深入思考。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,156評(píng)論 25 708
  • 北京的妖風(fēng)好大 害怕突如其來的高燒 和后續(xù)的治療 所以休息兩天
    迷軒佳閱讀 218評(píng)論 0 0
  • 今天是堅(jiān)持寫作100天的第【17】篇文章! 昨晚和男朋友產(chǎn)生了爭(zhēng)議,起因是因?yàn)樽罱鼉蓚€(gè)星期,我都連續(xù)加班,連周末也...
    康康加一閱讀 378評(píng)論 0 0
  • 我們先了解下力的作用為什么相互的,學(xué)過初中物理的都知道這個(gè)原理。 相互作用力,宇宙存在的自然基本力之一。成立的條件...
    goodbyed閱讀 1,067評(píng)論 0 2
  • 齋月已悄悄離我而去,這個(gè)夏天讓身體忍受了饑餓,讓心靈經(jīng)歷了洗滌,這種感受會(huì)讓嗅覺、味覺更加敏感,也更加讓你體會(huì)貧窮...
    綠肥紅瘦_4066閱讀 319評(píng)論 0 0

友情鏈接更多精彩內(nèi)容