什么是git bash

git bash是一個適用于microsoft Windows環(huán)境的應(yīng)用程序,它為Git命令行體驗提供了一個仿真層;相當(dāng)于在window上通過git bash這個模擬的Unix命令行的終端做git相關(guān)的版本控制。

什么是git bash

本文操作環(huán)境:Windows7系統(tǒng)、Git2.30.0版、Dell G3電腦。

什么是git bash?

Git Bash是一個適用于Microsoft Windows環(huán)境的應(yīng)用程序,它為Git命令行體驗提供了一個仿真層。相當(dāng)于在window上通過git bash這個模擬的Unix命令行的終端出來,然后在這個終端里面做git相關(guān)的版本控制。簡單來說就是Windows下的命令行工具。

GIT (分布式版本控制系統(tǒng))

Git(讀音為/g?t/)是一個開源的分布式版本控制系統(tǒng),可以有效、高速地處理從很小到非常大的項目版本管理。也是Linus Torvalds為了幫助管理Linux內(nèi)核開發(fā)而開發(fā)的一個開放源碼的版本控制軟件。

Torvalds 開始著手開發(fā) Git 是為了作為一種過渡方案來替代 BitKeeper 。

特點(diǎn)

分布式相比于集中式的最大區(qū)別在于開發(fā)者可以提交到本地,每個開發(fā)者通過克隆(git clone),在本地機(jī)器上拷貝一個完整的Git倉庫。

什么是git bash

如圖1所示是經(jīng)典的git開發(fā)過程。

Git的功能特性:

從一般開發(fā)者的角度來看,git有以下功能:

1、從服務(wù)器上克隆完整的Git倉庫(包括代碼和版本信息)到單機(jī)上。

2、在自己的機(jī)器上根據(jù)不同的開發(fā)目的,創(chuàng)建分支,修改代碼。

3、在單機(jī)上自己創(chuàng)建的分支上提交代碼。

4、在單機(jī)上合并分支。

5、把服務(wù)器上最新版的代碼fetch下來,然后跟自己的主分支合并。

6、生成補(bǔ)丁(patch),把補(bǔ)丁發(fā)送給主開發(fā)者。

7、看主開發(fā)者的反饋,如果主開發(fā)者發(fā)現(xiàn)兩個一般開發(fā)者之間有沖突(他們之間可以合作解決的沖突),就會要求他們先解決沖突,然后再由其中一個人提交。如果主開發(fā)者可以自己解決,或者沒有沖突,就通過。

8、一般開發(fā)者之間解決沖突的方法,開發(fā)者之間可以使用pull 命令解決沖突,解決完沖突之后再向主開發(fā)者提交補(bǔ)丁。

從主開發(fā)者的角度(假設(shè)主開發(fā)者不用開發(fā)代碼)看,git有以下功能:

1、查看郵件或者通過其它方式查看一般開發(fā)者的提交狀態(tài)。

2、打上補(bǔ)丁,解決沖突(可以自己解決,也可以要求開發(fā)者之間解決以后再重新提交,如果是開源項目,還要決定哪些補(bǔ)丁有用,哪些不用)。

3、向公共服務(wù)器提交結(jié)果,然后通知所有開發(fā)人員。

優(yōu)點(diǎn):

適合分布式開發(fā),強(qiáng)調(diào)個體。

公共服務(wù)器壓力和數(shù)據(jù)量都不會太大。

速度快、靈活。

任意兩個開發(fā)者之間可以很容易的解決沖突。

離線工作。

缺點(diǎn):

資料少(起碼中文資料很少)。

學(xué)習(xí)周期相對而言比較長。

不符合常規(guī)思維。

代碼保密性差,一旦開發(fā)者把整個庫克隆下來就可以完全公開所有代碼和版本信息。

推薦學(xué)習(xí):《Git教程

? 版權(quán)聲明
THE END
喜歡就支持一下吧
點(diǎn)贊13 分享