使用 git 來進(jìn)行代碼管理,就好像用手機(jī)拍照,想象一下,你把你人生的重要時(shí)刻都記錄在了手機(jī)里面,這樣子,你只要能夠回憶起照片的名稱叫什么,是不是就可以找到當(dāng)時(shí)的照片?沒見識(shí)過手機(jī)的請(qǐng)不用給我回答,我錯(cuò)了。
下面直接讓我們開始把。從 0 到 1 的過程:
如下圖:其中的 x 文件夾中存放的就是我們開發(fā) X 項(xiàng)目的全部代碼。雖然只有兩個(gè)文件,1.c,2.c 這就是個(gè)示意,當(dāng)然你的項(xiàng)目肯定 n 個(gè) c 文件,咱們只要懂原理就可以做到舉一反三了。
首先我們得先打開 git 的版本管理工具。就好比,我們需要聊天,就必須打開 QQ。有人會(huì)說,我一般只用微信,那我只能無言以對(duì)。
打開流程如下:
1,以界面的形式打開 git:
2,以命令行的形式打開 git,建議使用這一種。
我個(gè)人比較喜歡命令行的形式。下面的所有講解,都是基于 git bash 的界面基礎(chǔ)上的講解。如果不太習(xí)慣就不要往下繼續(xù)了。但是如果你能忍受下來,你會(huì)和我一樣愛上他的。
現(xiàn)在我們有了 git 和需要處理的項(xiàng)目代碼,接下來需要怎么辦呢?
首先是我們的第一條命令:git init。這個(gè)指令大致的功能有點(diǎn)類似于創(chuàng)建一個(gè)新世界,而這個(gè)“新世界”里面存放的就是你全部的代碼和版本信息。
跟著我,在命令行中寫入 git init 然后按下回車鍵,不出意外,大家應(yīng)該和我擁有和下圖一樣的相關(guān)內(nèi)容。其中在你項(xiàng)目文件夾里面生成的 .git 文件夾就是 git 幫助管理代碼的全部資料,這里面的東西不需要我們動(dòng)。也不允許動(dòng)。
但是,如何將 x 文件夾里面的東西存放到我們的“新世界”里面呢?我們必須遵循三個(gè)準(zhǔn)則或則步驟: 比較差異 -> 丟入新世界 -> 打上標(biāo)簽
1,比較 x 文件夾中的文件 和 “新世界”里面的內(nèi)容差異。如果一樣的話其實(shí)也沒必要保存了。比較指令: git status + 回車。你會(huì)發(fā)現(xiàn) x/ 是紅色的,這說明,x/ 整個(gè)文件夾和 “新世界”存在差異,這很明顯,當(dāng)前 “新世界”里面什么都沒有。
2,將 x 的內(nèi)容丟到 “新世界”當(dāng)中。 丟入指令:git add .
執(zhí)行 git add . 之后,就相當(dāng)于把 x/ 丟進(jìn)了“新世界”。這時(shí)候就需要給內(nèi)容打上一個(gè)標(biāo)簽。
3,給當(dāng)前丟入的全部內(nèi)容打上標(biāo)簽。標(biāo)簽指令:git commit -m “xxx”其中 xxx 就是標(biāo)簽信息。
這樣子,我們就將 /x 里面的文件全部存放到“新世界”里面去了。如何證明呢?我們可以使用 git log 指令將所有的標(biāo)簽信息展示出來。這樣子就可以看到我們提交的第一個(gè)版本信息為“開天辟地的版本”。這時(shí)候我們要關(guān)注一個(gè)很神秘的數(shù)字,就是 aaf89019eb4dd 。它就好比“開天辟地的版本”的門牌號(hào)。或則這么說吧,這個(gè)時(shí)候建立了一套門牌號(hào)為 aaf89019eb4dd 的房間,里面存放著這次你 add 到 “新世界”的全部文件。
這個(gè)時(shí)候,比方說我們尊敬又可愛的項(xiàng)目經(jīng)理讓我們把 1.c 文件中的第二個(gè) 1 改成 2。
功能修改完成之后,我們依次進(jìn)行:git status , git add . , git commit -m “將 1.c 中的第二個(gè) 1 修改為 2”.
這一套基本流程執(zhí)行完成以后,我們?cè)诳聪?log 信息。
這時(shí)候我們就有了兩套代碼了,這就好像這個(gè)項(xiàng)目的履歷一樣,什么時(shí)候修改了什么,到了什么階段。整個(gè)過程都保留著,清晰可見。再也看不見壓縮包了。太舒心了。這時(shí)候我門就可以在這兩個(gè)版本之間任意的切換。至于如何切換。。。且聽下回分解。