1. 程式人生 > >Linux(CentOs6.4)安裝Git

Linux(CentOs6.4)安裝Git

安裝之前我們先來了解下git,並且要反問下:我為什麼要使用git?svn用的不是很好嘛,我幹嘛要換?。。。

問1:為什麼需要版本控制系統?

版本控制是一種記錄若干檔案內容變化,以便將來查閱特定版本修訂情況的系統。大部分時候我們使用最頻繁的還是對原始碼檔案的版本控制,其實任何檔案都可以納入版本控制系統。

1).更好備份:相比於將不同版本的檔案以時間等命名儲存備份,使用版本控制系統能節約更多的磁碟空間,因為版本控制系統不是檔案的複製備份,而是差異備份,檔案快照備份等等。

2).更好的回溯:可以將某個檔案回溯到之前的任何一個提交狀態,甚至將整個專案回退到過去的某個時間點。

3).更好的團隊協作

:這是我認為最重要的,團隊共同開發一款軟體,如果沒有版本控制,那是不可想象的,簡單點的可以使用檔案傳輸到某一位核心開發者庫上進行合併,但如果團隊的成員是分散在全國各地的,甚至是世界各地的,比如linux核心的開發,那完全是沒辦法進行的。使用版本控制後,可以比較檔案的變化系統,可以查詢是誰提交了新的更新,並且可以由專案負責人管理提交,進行更新的管理。

問2:相比於svn, git有什麼優勢?

其實這裡真要說出誰比誰好,真的很難說,從不同的角度和不同的需求可能都會有不同的觀點,這裡我也只能說明兩者的適用情景。

svn屬於集中化的版本控制系統:有一個單一的集中管理的伺服器,儲存所有檔案的修訂版本,而協同工作的成員通過客戶端連線到這臺伺服器,進行檔案上傳和更新。

      優點:a.使用簡單,比較符合我們的常規思維(我當年從SVN轉向Git也花費了不少時間)。b.同步程式碼比較簡單,只要一步操作即可。

      缺點:a.丟失資料的風險:最顯而易見的,由於集中化的特點,如果版本庫的伺服器磁碟發生故障等,你不能保證所有的資料已經有人提取出來了,最壞的情況是徹底的丟失整個專案的所有歷史更改記錄。b.網路中斷的情況下,協作就無法進行了,因為無法連線伺服器進行上傳和更新。

git屬於分散式版本控制系統:客戶端並不只提取最新版本的檔案快照,而是把原始的程式碼倉庫完整地映象下來。

  優點:a.由於任何人每次提取操作,實際上都是一次對程式碼倉庫的完整備份,因此近乎所有的操作都可以在本地執行,速度就是相當的快,並且可以在網路斷開的時候操作仍然不受影響,可以頻繁的進行提交更新,等到有網路的時候再上傳到遠端的映象倉庫就可以了。b.文件很詳細,並且命令列的提示也很到位,用起來比較得新應手,而且很多的設定與操作跟linux操作很相近(不虧是linux之父創造的)。c.git的分支模型,相當的輕量級,被稱為“必殺技”。

   缺點:a.每個開發人員都擁有所有的程式碼,不利於核心程式碼的保密(如果有重要程式碼需要保密,則不建議使用git)

git的歷史

當年教授給我們將git歷史的時候,感覺特別有意思,還特崇拜linux之父Linus Torvalds。linux核心開發是來自世界各地的熱衷於開源的人士,開始他們使用的版本控制系統是一個商業產品BitKeeper,並免費給linux使用,但由於後期開發人員越來越龐大等等原因,而BitKeeper畢竟是商業產品,終於在2005年與linux核心開源社群結束了合作關係,Linus Torvalds一氣之下就自己開發了一款適合linux核心開發管理的版本管理系統Git。現在Linus Torvalds其實很少寫程式碼了,而是將別人提交的程式碼合併到核心中去,更多時間裡,就是在對別人提交的程式碼說“Yes”或者“No”,或是指導別人該在什麼地方進行修改。

git在linux的安裝:(以下涉及到的軟體基本都使用yum安裝,如果你的機子不聯網,建議你先建本地yum源:http://www.cnblogs.com/shenliang123/p/3829044.html

1.先從官網 http://git-scm.com/download 上下載git-1.7.3.tar.gz

2.將檔案git-1.7.3.tar.gz複製到/opt/git/gitinstall下,並解壓

[[email protected] gitinstall]# tar -zxvf git-1.7.3.tar.gz

3.進行配置安裝

[[email protected] gitinstall]# cd git-1.7.3
[[email protected] git-1.7.3]# ./configure
[[email protected] git-1.7.3]# make
[[email protected] git-1.7.3]# make install

----------------------------------------------------------------------------------------------------

但在執行make操作時報錯:缺少gcc,yum安裝gcc

[[email protected] ~]# yum -y install gcc

重新執行make操作,還報錯,缺少zlib.h。我們可以檢視是否存在zlib.h

[[email protected] ~]# whereis zlib

如果存在則會輸出zlib路徑。不存在則輸出空白,以下是安裝詳情:

1.從http://www.zlib.net/下載zlib最新版:zlib-1.2.8.tar.gz

2.解壓,編譯

[[email protected] gitinstall]# tar -zxvf zlib-1.2.8.tar.gz
[[email protected] gitinstall]# cd zlib-1.2.8
[[email protected] zlib-1.2.8]# ./configure
[[email protected] zlib-1.2.8]# make
[[email protected] zlib-1.2.8]# make install

--------------------------------------------------------------------------------------------------------------------------------------------

重新執行make,make install,無錯誤輸出,驗證安裝是否成功:

[[email protected] git-1.7.3]# whereis git
git:/usr/local/bin/git
[[email protected] git-1.7.3]# git -version
git version 1.7.3

以上輸出就意味著安裝成功了!

相關推薦

Linux(CentOs6.4)安裝Git

安裝之前我們先來了解下git,並且要反問下:我為什麼要使用git?svn用的不是很好嘛,我幹嘛要換?。。。 問1:為什麼需要版本控制系統? 版本控制是一種記錄若干檔案內容變化,以便將來查閱特定版本修訂情況的系統。大部分時候我們使用最頻繁的還是對原始碼檔案的版本控制,其實任何檔案都可以納入版本控制系統。

Linux-Centos6.8安裝redis-4.0.10 官方叢集版

可參考 http://www.cnblogs.com/frankdeng/p/9332618.html 1.下載安裝包 http://download.redis.io/releases/redis-4.0.10.tar.gz wget http://download.re

linux-CentOS6.4安裝oracle11g詳解

目錄:         1.前言         2.安裝環境         3.基本要求         4.修改linux核心配置(可省略)         5.安裝步驟         6.建立資料庫         7.建立監聽        

Centos6.4安裝opennebula

nod tex dir 替換 get nsa mina ransac mach Centos6.4安裝opennebula #安裝163源 http://mirrors.163.com/.help/CentOS6-Base-163.repo #安裝

CentOS6.4 安裝 MySql5.5.13

l數據庫 src alt node entos 刪除 --nodeps 提示 nbsp 1、卸載系統自帶的MySql 1.1、查看該操作系統上是否已經安裝了mysql數據庫   [[email protected]/* */ ~]# rpm -qa | gr

centos/linux下的安裝git

images hub cpio true centos gettext per 安裝git 分享 1.下載git wget https://github.com/git/git/archive/v2.14.1.zip 2.安裝依賴 sudo yu

Centos6.4安裝配置sendmail

etc 無法 識別 去掉註釋 行為 著作權 需要 tar kconfig 一.安裝sendmail yum install -y sendmail yum install -y sendmail-cf 二. 安裝salauthd //使用SMTP認證,需要安裝saslau

1.1 學習之初 1.2 約定 1.3 認識Linux 1.4 安裝虛擬機 1.5 安裝centos

2018-03-181,安裝好虛擬機後,文件---新建虛擬機--然後就下一步--,2下一步選如下:3.如下圖4.下一步直到如下圖5.下一步直到如下圖:6.下一步:7.下一步 直到完成即可。8.下面開始配置:編輯虛擬機:9.配置網絡:10.然後開始點 開啟此虛擬機--然後按上下左右箭頭按鍵--選擇第一個In

Linux -- Centos6 yum安裝相關問題與處理

更新 ges was ear xtra entos ast follow node Centos6 yum安裝相關問題與處理 由於要使用yum下載文件,突然yum下載不了想要的文件,想更換yum源,結果得重新安裝yum 來自本人GitHub地址 https://githu

Linux CentOS6.5安裝Nginx1.8.0

命令 ref 存在 stc grep 目錄 linu 註意 依賴 一. 安裝nginx 1. 準備1.8.0安裝包 nginx-1.8.0.tar.gz 2. 安裝第三方依賴 yum install gcc-c++ yum install -y pcre pcre-dev

CentOS6.4安裝Zookeeper-3.4.12圖解教程

attr dcb 同時 圖片 遠程 iso root用戶 網絡 系統盤 安裝工具 VMware_workstation_full_12.5.2 CentOS6-Base-163 CentOS-6.4-x86_64-bin-DVD1.iso VM運行配置 雙擊運行VM 運行

centos6.5安裝git

kernel .org entos https pub bin perl util sof 安裝必須文件 yum install curl-devel expat-devel gettext-devel openssl-devel zlib-develyum install

linux下手動安裝git教程

Git是一個開源的分散式版本控制系統,可以有效、高速的處理從很小到非常大的專案版本管理。而國外的GitHub和國內的Coding都是專案的託管平臺。但是在使用git工具的時候,第一步要學會如何安裝git,本教程就手把手教大家如何手動編譯安裝git。 1、介紹   使用Coding管理專案,上面要求使用的g

centos6.4安裝搭建pptp vpn服務(附pptp vpn 一鍵安裝包)

今天在vps上裝pptp ,和以往一樣,只不過不是在自己的vps上,上次ssh代理被封ip,對我的身心造成了深深的影響,所以,這次拿網友放我這的vps來搭建vpn環境。pptp的搭建比openvpn容易多了。以下是我的配置過程,其實和網上差不多,centos6.4 搭建 centos 6.4 搭建p

linux centos6.8 安裝svn伺服器(yum方式)

1.檢視yum是否安裝          在終端中輸入yum即可如果已經安裝,會顯示yum的引數          如果沒有安裝,會提示yum未安裝或無效命令…… 2.安裝svn yu

centos6.4安裝使用wine 持續更新中

轉載地址:https://blog.csdn.net/baikaishui525/article/details/9356517 首先,從wine的官網下載頁面http://www.winehq.org/download/可以瞭解到centos安裝wine需要EPEL軟體倉庫。那麼首先安裝EPE

linux 7.4安裝11g報錯

2299494.1 1959008.1 18841764 18370031 26247490 28429134 yum provides *fuser 最小安裝。。還有其他包 compat-libstdc++... yum install perl_CPAN Swit

Linux下yum安裝git

1、安裝 注意:yum install -y與yum install的區別 yum -y install 包名(支援*):自動選擇y yum install 包名(支援*):手動選擇y or n (1)git --version #檢視是否安裝了git 若顯示

Linux(CentOS6.7) 安裝MySql5.7資料庫

Linux(CentOS6.7) 安裝MySql5.7資料庫 圖文教程 linux(CentOS6.7) 環境Mysql 5.7.17安裝教程分享給大家,供大家參考,具體內容如下: 1系統約定 安裝檔案下載目錄:/data/software Mysql目錄安裝位置:/usr/loca

Centos6.4安裝Squid代理

Squid是一個快取Internet 資料的軟體,其接收使用者的下載申請,並自動處理所下載的資料。當一個使用者想要下載一個主頁時,可以向Squid 發出一個申請,要Squid 代替其進行下載,然後Squid 連線所申請網站並請求該主頁,接著把該主頁傳給使用者同時保留一個備份,當別的使用者申請同樣的頁面時,Sq