以前總是由於自己的自身的原因,對於每一次的git的操作,我都是通過eclipse或者是idea來進行的,但是
我每一次都不是很清楚的關於這些方面的操作,現在我們來進行關於git bash的操作,正是由於這些操作使
的自己對於git的操作有了一個比較清晰的認知了,首先我們先看一張圖:
首先我們必須要先理解這幾個概念:暫存區,本地倉庫,遠程倉庫
首先暫存區這個是我們每一次進行代碼修改的地方,例如我們ieda的所編譯的代碼就是緩存區
本地倉庫:是我們每一次pull,從遠程倉庫pull(拉取)到地方,這個地方就是本地倉庫 ,他其實就是
遠程倉庫的一個副本
遠程倉庫:這個是存放到服務器上的代碼,是每一個人認為自己的代碼修改好了,就可以集體上傳
到一個地方,而你也可以從這個地方下載別人的代碼,這個地方就是遠程倉庫。
我們接下來就來介紹一下使用情況,
Master:主分支
wangjing18-dev:Master分支,這個是存放博主的代碼的地方
Stanging:Master分支,這個是我們集體存放測試代碼的分支
例如:你有一個項目,你在本地測好了,但是你想放到線上服務器
但是你又不確定沒有bug,則這個時候你可以把代碼放入到線上的
測試環境上面,這個時候是線上的測試環境,可以讓測試人員也可
以訪問的到。
然后我們來介紹這個圖的意思:
pull:這個是遠程倉庫拉取數據到本地倉庫,就是為了和遠程倉庫所匹配
commit:當我們想要把自己的代碼想要提交到遠程的時候,所用的命令行語句,由於我們修改所在的區域在暫存區
我們首先要把自己的代碼commit(提交)到本地倉庫,然后在從本地倉庫push到遠程倉庫,但是切記住一點,我們如
果每一次在commit的時候,我們都需要先從線上pull最新的代碼到本地倉庫,然后在把暫存區里面的代碼提交到本地
倉庫,這個時候如果沒有沖突固然是最好的,如果有了沖突,這我需要解決沖突,這個此時本地倉庫已經是最新的代碼
且又包括暫存區上面的代碼了
push:這個就是我們前面把代碼提交到了本地,如果我們需要提交到遠程服務器上,則需要把代碼push到遠程的分支里
面,如果有了沖突,再解決就好了
其中merge:如果有兩個分支里面的代碼在同一個區域中(兩個同時隸屬於暫存區,或本地倉庫,或遠程倉庫),這個時候
如果我們想要把這個兩個分區合並,這個也就是所謂commit,只不過這個不跨區域,此時我們把wangjing18-dev的這
個分支mergeStanging,此時這個mergeStanging就有了wangjing18-dev的代碼,然后我們在commit,然后在push,
則這個樣子就可以了這個就是git的簡單的使用原理