git
簡介:
git是一款免費、開源的分布式版本控制系統,用於敏捷高效地處理任何或小或大的專案。同
svn一樣,作為一種專案管理的工具。在很多開源社群,很多**都是用的
git,所以需要稍微了解使用一下這個工具。 對於
svn我們大家都比較熟悉,用的比較多,那麼我們來比較一下
git與
svn。
最顯著的區別是方式的區別,
svn及
cvs都是集中式;而
git是分布式;集中式和分布式版本控制系統有什麼區別呢?
先說集中式版本控制系統,版本庫是集中存放在**伺服器的,而幹活的時候,用的都是自己的電腦,所以要先從**伺服器取得最新的版本,然後開始幹活,幹完活了,再把自己的活推送給**伺服器。**伺服器就好比是乙個圖書館,你要改一本書,必須先從圖書館借出來,然後回到家自己改,改完了,再放回圖書館。
集中式版本控制系統最大的毛病就是必須聯網才能工作,如果在區域網內還好,頻寬夠大,速度夠快,可如果在網際網路上,遇到網速慢的話,可能提交乙個
10m的檔案就需要5分鐘
,根本無法忍受。
那分布式版本控制系統與集中式版本控制系統有何不同呢?首先,
分布式版本控制系統根本沒有「**伺服器」,每個人的電腦上都是乙個完整的版本庫
,這樣,你工作的時候,就不需要聯網了,因為版本庫就在你自己的電腦上。既然每個人電腦上都有乙個完整的版本庫,那多個人如何協作呢?比方說你在自己電腦上改了檔案
a,你的同事也在他的電腦上改了檔案a,這時,你們倆之間只需把各自的修改推送給對方,就可以互相看到對方的修改了。
和集中式版本控制系統相比,分布式版本控制系統的安全性要高很多,因為每個人電腦裡都有完整的版本庫,某乙個人的電腦壞掉了不要緊,隨便從其他人那裡複製乙個就可以了。而集中式版本控制系統的**伺服器要是出了問題,所有人都沒法幹活了。
在實際使用分布式版本控制系統的時候,其實很少在兩人之間的電腦上推送版本庫的修改,因為可能你們倆不在乙個區域網內,兩台電腦互相訪問不了,也可能今天你的同事病了,他的電腦壓根沒有開機。因此,分布式版本控制系統通常也有一台充當「**伺服器」的電腦,但這個伺服器的作用僅僅是用來方便「交換」大家的修改,沒有它大家也一樣幹活,只是交換修改不方便而已。
git簡單使用:
一、初步建立
在windows上
1.選擇乙個資料夾為
git的倉庫資料夾;輸入如下:
不是資料夾名稱;
h:/git
是全路徑; 2.
初始化倉庫;
git init
在h:/git
下會出現乙個
.git
的資料夾; 3.
新增檔案
git add
4.新增之後要提交:
」是注釋,最好寫; 5.
檢視狀態:
6.檢視修改:
git diff
檔名
7.新增
8.查詢狀態,看那些檔案要被提交
9.提交
10.再次檢視狀態
無要提交的專案了。
總結:當然,
git並非十全十美的,
git也有缺點,比如:資料少;學習週期相對而言比較長;不符合常規思維;**保密性差,一旦開發者把整個庫轉殖下來就可以完全公開所有**和版本資訊。但在很多方面,
git的缺點是無法掩蓋其優點的。當然,分布式版本控制系統除了
git外還有很多,比如
bitkeeper
、mercurial和bazaar等。這些分布式版本控制系統各有特點,但最快、最簡單也最流行的依然是git!
Git入門(一) 簡介
作為目前最流行的版本控制系統,git是大多數開發者進行專案管理和版本控制的首選。同時,對git的熟練使用也成為開發者必備的技能。筆者尚處於git的入門學習階段,本系列博文是自己學習過程的記錄和總結,開這麼乙個大坑也是希望以此作為對自己學習的一種激勵,其中難免有錯誤或理解不準確的地方,懇請各位指正。本...
Git學習(一)簡介
很多人都知道,linus在1991年建立了開源的linux,從此,linux系統不斷發展,已經成為最大的伺服器系統軟體了。linus雖然建立了linux,但linux的壯大是靠全世界熱心的志願者參與的,這麼多人在世界各地為linux編寫 那linux的 是如何管理的呢?事實是,在2002年以前,世界...
Git 學習一 簡介
git 標準分支開發流程 git 是乙個優秀的分布式版本控制系統。參考 git 官網中文教程 廖雪峰的 git 教程 oschina 中文教程 linus 在1991年建立了開源的linux。此後,linux系統在全世界熱心志願者的不斷參與下,不斷發展,現在已經成為最大的伺服器系統軟體了。那linu...