1. 程式人生 > >Git安裝與配置

Git安裝與配置

git

(一)Git概述

Git是一款免費、開源的分布式版本控制系統,用於敏捷高效地處理任何或小或大的項目。

Git是一個開源的分布式版本控制系統,可以有效、高速的處理從很小到非常大的項目版本管理。[2] Git 是 Linus Torvalds 為了幫助管理 Linux 內核開發而開發的一個開放源碼的版本控制軟件。

Git 與常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本庫的方式,不必服務器端軟件支持。

----------百度百科


Git 與 SVN 區別點:

  • 1、GIT是分布式的,SVN是集中式的:這是GIT和其它非分布式的版本控制系統,例如SVN,CVS等,最核心的區別。

  • 2、GIT把內容按元數據方式存儲,而SVN是按文件:所有的資源控制系統都是把文件的元信息隱藏在一個類似.svn,.cvs等的文件夾裏。

  • 3、GIT分支和SVN的分支不同:分支在SVN中一點不特別,就是版本庫中的另外的一個目錄。

  • 4、GIT沒有一個全局的版本號,而SVN有:目前為止這是跟SVN相比GIT缺少的最大的一個特征。

  • 5、GIT的內容完整性要優於SVN:GIT的內容存儲使用的是SHA-1哈希算法。這能確保代碼內容的完整性,確保在遇到磁盤故障和網絡問題時降低對版本庫的破壞。


(二)Git安裝

Git 的工作需要調用 curl,zlib,openssl,expat,libiconv 等庫的代碼,所以需要先安裝這些依賴工具。在有 yum 的系統上(比如 Fedora)或者有 apt-get 的系統上(比如 Debian 體系),可以用下面的命令安裝:

(1)Linux平臺上安裝(CentOS/Redhat)git服務端

1.#######安裝git所對應的編譯包
[[email protected] ~]# yum install curl-devel expat-devel gettext-devel >   openssl-devel zlib-devel
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: ftp.sjtu.edu.cn
 * extras: ftp.sjtu.edu.cn
 * updates: mirror.bit.edu.cn
Package expat-devel-2.1.0-10.el7_3.x86_64 already installed and latest version
Package 1:openssl-devel-1.0.1e-60.el7_3.1.x86_64 already installed and latest version
Package zlib-devel-1.2.7-17.el7.x86_64 already installed and latest version
Resolving Dependencies
--> Running transaction check
---> Package gettext-devel.x86_64 0:0.18.2.1-4.el7 will be installed
--> Processing Dependency: gettext-common-devel = 0.18.2.1-4.el7 for package: gettext-devel-0.18.2.1-4.el7.x86_64
---> Package libcurl-devel.x86_64 0:7.29.0-35.el7.centos will be installed
base/7/x86_64/filelists_db                               | 6.6 MB     00:00     
--> Processing Dependency: libcurl = 7.29.0-35.el7.centos for package: libcurl-devel-7.29.0-35.el7.centos.x86_64
--> Running transaction check
---> Package gettext-common-devel.noarch 0:0.18.2.1-4.el7 will be installed
---> Package libcurl.x86_64 0:7.29.0-25.el7.centos will be updated
--> Processing Dependency: libcurl = 7.29.0-25.el7.centos for package: curl-7.29.0-25.el7.centos.x86_64
---> Package libcurl.x86_64 0:7.29.0-35.el7.centos will be an update
--> Running transaction check
---> Package curl.x86_64 0:7.29.0-25.el7.centos will be updated
---> Package curl.x86_64 0:7.29.0-35.el7.centos will be an update
--> Finished Dependency Resolution
Dependencies Resolved
================================================================================
 Package                  Arch       Version                     Repository
                                                                           Size
================================================================================
Installing:
 gettext-devel            x86_64     0.18.2.1-4.el7              base     315 k
 libcurl-devel            x86_64     7.29.0-35.el7.centos        base     299 k
Installing for dependencies:
 gettext-common-devel     noarch     0.18.2.1-4.el7              base     368 k
Updating for dependencies:
 curl                     x86_64     7.29.0-35.el7.centos        base     265 k
 libcurl                  x86_64     7.29.0-35.el7.centos        base     218 k
Transaction Summary
================================================================================
Install  2 Packages (+1 Dependent package)
Upgrade             ( 2 Dependent packages)
Total download size: 1.4 M
Is this ok [y/d/N]: y
Downloading packages:
Delta RPMs disabled because /usr/bin/applydeltarpm not installed.
(1/5): curl-7.29.0-35.el7.centos.x86_64.rpm                | 265 kB   00:00     
(2/5): gettext-common-devel-0.18.2.1-4.el7.noarch.rpm      | 368 kB   00:00     
(3/5): gettext-devel-0.18.2.1-4.el7.x86_64.rpm             | 315 kB   00:00     
(4/5): libcurl-7.29.0-35.el7.centos.x86_64.rpm             | 218 kB   00:00     
(5/5): libcurl-devel-7.29.0-35.el7.centos.x86_64.rpm       | 299 kB   00:00     
--------------------------------------------------------------------------------
Total                                              6.0 MB/s | 1.4 MB  00:00     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Updating   : libcurl-7.29.0-35.el7.centos.x86_64                          1/7 
  Installing : gettext-common-devel-0.18.2.1-4.el7.noarch                   2/7 
  Installing : gettext-devel-0.18.2.1-4.el7.x86_64                          3/7 
  Updating   : curl-7.29.0-35.el7.centos.x86_64                             4/7 
  Installing : libcurl-devel-7.29.0-35.el7.centos.x86_64                    5/7 
  Cleanup    : curl-7.29.0-25.el7.centos.x86_64                             6/7 
  Cleanup    : libcurl-7.29.0-25.el7.centos.x86_64                          7/7 
  Verifying  : curl-7.29.0-35.el7.centos.x86_64                             1/7 
  Verifying  : gettext-common-devel-0.18.2.1-4.el7.noarch                   2/7 
  Verifying  : libcurl-7.29.0-35.el7.centos.x86_64                          3/7 
  Verifying  : gettext-devel-0.18.2.1-4.el7.x86_64                          4/7 
  Verifying  : libcurl-devel-7.29.0-35.el7.centos.x86_64                    5/7 
  Verifying  : libcurl-7.29.0-25.el7.centos.x86_64                          6/7 
  Verifying  : curl-7.29.0-25.el7.centos.x86_64                             7/7 
Installed:
  gettext-devel.x86_64 0:0.18.2.1-4.el7                                         
  libcurl-devel.x86_64 0:7.29.0-35.el7.centos                                   
Dependency Installed:
  gettext-common-devel.noarch 0:0.18.2.1-4.el7                                  
Dependency Updated:
  curl.x86_64 0:7.29.0-35.el7.centos    libcurl.x86_64 0:7.29.0-35.el7.centos   
Complete!
2.##########通過yum進行安裝
[[email protected] ~]# yum -y install git-core
已加載插件:fastestmirror
設置安裝進程
Loading mirror speeds from cached hostfile
 * epel: mirrors.tuna.tsinghua.edu.cn
解決依賴關系
--> 執行事務檢查
---> Package git.x86_64 0:1.7.1-4.el6_7.1 will be 升級
--> 處理依賴關系 git = 1.7.1-4.el6_7.1,它被軟件包 perl-Git-1.7.1-4.el6_7.1.noarch 需要
---> Package git.x86_64 0:1.7.1-9.el6_9 will be an update
--> 執行事務檢查
---> Package perl-Git.noarch 0:1.7.1-4.el6_7.1 will be 升級
---> Package perl-Git.noarch 0:1.7.1-9.el6_9 will be an update
--> 完成依賴關系計算
依賴關系解決
================================================================================
 軟件包           架構           版本                     倉庫             大小
================================================================================
正在升級:
 git              x86_64         1.7.1-9.el6_9            updates         4.6 M
為依賴而更新:
 perl-Git         noarch         1.7.1-9.el6_9            updates          29 k
事務概要
================================================================================
Upgrade       2 Package(s)
總下載量:4.6 M
下載軟件包:
(1/2): git-1.7.1-9.el6_9.x86_64.rpm                      | 4.6 MB     00:00     
(2/2): perl-Git-1.7.1-9.el6_9.noarch.rpm                 |  29 kB     00:00     
--------------------------------------------------------------------------------
總計                                            889 kB/s | 4.6 MB     00:05     
運行 rpm_check_debug 
執行事務測試
事務測試成功
執行事務
  正在升級   : perl-Git-1.7.1-9.el6_9.noarch                                1/4 
  正在升級   : git-1.7.1-9.el6_9.x86_64                                     2/4 
  清理       : perl-Git-1.7.1-4.el6_7.1.noarch                              3/4 
  清理       : git-1.7.1-4.el6_7.1.x86_64                                   4/4 
  Verifying  : git-1.7.1-9.el6_9.x86_64                                     1/4 
  Verifying  : perl-Git-1.7.1-9.el6_9.noarch                                2/4 
  Verifying  : perl-Git-1.7.1-4.el6_7.1.noarch                              3/4 
  Verifying  : git-1.7.1-4.el6_7.1.x86_64                                   4/4 
更新完畢:
  git.x86_64 0:1.7.1-9.el6_9                                                    
作為依賴被升級:
  perl-Git.noarch 0:1.7.1-9.el6_9                                               
完畢!
3.########查看版本信息
[[email protected] ~]# git --version
git version 1.8.3.1
4.創建git用戶,用來運行git服務
[[email protected] ~]#  useradd git -s /sbin/nologin -M
5.創建客戶端登錄證書。一路回車即可,將生成的id_rsa.pub,復制給管理員,幫你在服務器上增加一下,下次你用git時就不需要輸入用戶名和密碼了。
[[email protected] ~]# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
f3:bb:45:5c:83:21:70:06:f0:ab:87:2c:9e:11:2e:68 [email protected]
The key‘s randomart image is:
+--[ RSA 2048]----+
|      ..oo+ .    |
|       . o . o   |
|        .   . o  |
|         . . . . |
|    .   S   o    |
| . . o o o .     |
|.E. + + . . .    |
|.  o + .   o     |
|    o     o.     |
+-----------------+
[[email protected] ~]# cat  /root/.ssh/authorized_keys    
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAvPX0EADLEd7PkDB2KvGssNFswZ4ovLZkuNDAH+425EtrpKn6cPjceb+yajqAd6bpXtzpp1ZbAusizlN4JulXdOPO8cj5yEoCqjkWzD0f0do3eybC+NE/jBFqgViNi6DQtAEmkzhqsSw/YKOStO09r/D2egv4J8DDF09ZQN0dibU7prRHRLkppTxhypw8xm9B6znPWnl0e1Yn64A/lYy/EVp2H4SpMknZhfcD0qpUZyWyO1LecP1rbiBOeak5UVYFzH7iJ++7RULi2VVnq93FpyLvVNQTLwm0s4RiiKZdRKflk6DP9sHPjZROD1+iXepHnyTAEungWRnmyjuYXVySgw== [email protected]
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAytLVeZyNACFK+/PjBXUvMHNJ7HiS/9bsTSIKQEhLRtMxOinexadnp/AlKQaUYEblIEi7FkXcCDTR18EefFu4wCptzMUs8W8kxw6u1TN0jx2Y+7Eo7MbH6MRuA9fehwgtiPdPbsMiu400LIq+zlZOvJY3E/QX3pvvAbbXhu61fraffFWSkGEyELOApacC0aJfnEBSYfcCa7flWGjvKhUCC1YJP/qn40X+l6sGJ/+ZTItETZ+r7IayQwpPpFMUt5hmIYgCE6V8eG/wN2VlBq24xnBk+wDVPwd5p++KwQT9xndcLQbecmBaqtdLF8OgMN0DngQatymP0jHZQHsxM3VmUw== [email protected]
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAvPX0EADLEd7PkDB2KvGssNFswZ4ovLZkuNDAH+425EtrpKn6cPjceb+yajqAd6bpXtzpp1ZbAusizlN4JulXdOPO8cj5yEoCqjkWzD0f0do3eybC+NE/jBFqgViNi6DQtAEmkzhqsSw/YKOStO09r/D2egv4J8DDF09ZQN0dibU7prRHRLkppTxhypw8xm9B6znPWnl0e1Yn64A/lYy/EVp2H4SpMknZhfcD0qpUZyWyO1LecP1rbiBOeak5UVYFzH7iJ++7RULi2VVnq93FpyLvVNQTLwm0s4RiiKZdRKflk6DP9sHPjZROD1+iXepHnyTAEungWRnmyjuYXVySgw== [email protected]


(2)安裝windos平臺的git客戶端

1,下載客戶端。下載地址如下:https://git-scm.com/downloads

2,windows安裝比較簡單基本上都是下一步下一步,見下圖

技術分享

技術分享

技術分享

技術分享

技術分享

技術分享

技術分享

技術分享

技術分享

技術分享


(3)安裝Linux平臺的git客戶端(https://www.kernel.org/pub/software/scm/git/ 或者https://github.com/git/git/releases )

[[email protected] ~]# yum install git -y
Loaded plugins: fastestmirror
Determining fastest mirrors
 * base: mirrors.aliyun.com
 * extras: mirrors.aliyun.com
 * updates: mirrors.aliyun.com
base                                                     | 3.7 kB     00:00     
extras                                                   | 3.4 kB     00:00     
extras/primary_db                                        |  29 kB     00:00     
updates                                                  | 3.4 kB     00:00     
updates/primary_db                                       | 4.7 MB     00:00     
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package git.x86_64 0:1.7.1-9.el6_9 will be installed
--> Processing Dependency: perl-Git = 1.7.1-9.el6_9 for package: git-1.7.1-9.el6_9.x86_64
--> Processing Dependency: rsync for package: git-1.7.1-9.el6_9.x86_64
--> Processing Dependency: perl(Git) for package: git-1.7.1-9.el6_9.x86_64
--> Processing Dependency: perl(Error) for package: git-1.7.1-9.el6_9.x86_64
--> Running transaction check
---> Package perl-Error.noarch 1:0.17015-4.el6 will be installed
---> Package perl-Git.noarch 0:1.7.1-9.el6_9 will be installed
---> Package rsync.x86_64 0:3.0.6-12.el6 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
================================================================================
 Package           Arch          Version                   Repository      Size
================================================================================
Installing:
 git               x86_64        1.7.1-9.el6_9             updates        4.6 M
Installing for dependencies:
 perl-Error        noarch        1:0.17015-4.el6           base            29 k
 perl-Git          noarch        1.7.1-9.el6_9             updates         29 k
 rsync             x86_64        3.0.6-12.el6              base           335 k
Transaction Summary
================================================================================
Install       4 Package(s)
Total download size: 5.0 M
Installed size: 15 M
Downloading Packages:
(1/4): git-1.7.1-9.el6_9.x86_64.rpm                      | 4.6 MB     00:00     
(2/4): perl-Error-0.17015-4.el6.noarch.rpm               |  29 kB     00:00     
(3/4): perl-Git-1.7.1-9.el6_9.noarch.rpm                 |  29 kB     00:00     
(4/4): rsync-3.0.6-12.el6.x86_64.rpm                     | 335 kB     00:00     
--------------------------------------------------------------------------------
Total                                            30 MB/s | 5.0 MB     00:00     
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing : 1:perl-Error-0.17015-4.el6.noarch                            1/4 
  Installing : rsync-3.0.6-12.el6.x86_64                                    2/4 
  Installing : perl-Git-1.7.1-9.el6_9.noarch                                3/4 
  Installing : git-1.7.1-9.el6_9.x86_64                                     4/4 
  Verifying  : rsync-3.0.6-12.el6.x86_64                                    1/4 
  Verifying  : git-1.7.1-9.el6_9.x86_64                                     2/4 
  Verifying  : perl-Git-1.7.1-9.el6_9.noarch                                3/4 
  Verifying  : 1:perl-Error-0.17015-4.el6.noarch                            4/4 
Installed:
  git.x86_64 0:1.7.1-9.el6_9                                                    
Dependency Installed:
  perl-Error.noarch 1:0.17015-4.el6       perl-Git.noarch 0:1.7.1-9.el6_9      
  rsync.x86_64 0:3.0.6-12.el6            
Complete!
[[email protected] ~]# git --version
git version 1.7.1
[[email protected] ~]#

本文出自 “清風明月” 博客,請務必保留此出處http://liqingbiao.blog.51cto.com/3044896/1970979

Git安裝與配置