分佈式版本控制系統 Git

分佈式版本控制系統 Git


關於版本控制


版本控制是一種記錄一個或若干個內容變化,以便未來查閱特定版本修訂的狀況的系統。git

分佈式版本控制系統

Git 是分佈式版本控制系統,這裏要比較集中式版本控制系統一塊兒說明。數據庫

集中式版本控制系統,都有一個單一的集中管理的服務器,保存全部文件的修訂版本,協同工做的人們都經過客戶端鏈接到這臺服務器,取出最新的文件或者提交更新。服務器

集中式版本控制系統的缺點,就是必須聯網工做,當遇到服務器宕機時,這時協同工做的全部人都沒法工做。若遇到中心數據庫損壞這種極端的狀況下,若未備份,數據將丟失。微信

而分佈式版本控制系統,沒有管理的服務器,客戶端並非只提取最新版本的文件快照,而是完整克隆代碼倉庫。若遇到故障時,都從另一個協同者克隆出來的倉庫進行恢復。ssh

安裝 Git


在 Linux 上 安裝

在 Linux 上安裝,可先嚐試使用 git 命令查看系統是否安裝 git:編輯器

$ git
The program 'git' is currently not installed. You can install it by typing:
sudo apt-get install git

上面的輸出結果表示系統未安裝 git。分佈式

以 Ubuntu 爲例,可使用 apt-get網站

$ sudo apt-get install git

以 Centos 爲例,可使用 yumurl

$ sudo yum install git

在 Mac 上安裝

在 Mac 上安裝 Git,最簡單的方法是安裝 Xcode Command line Tools。版本控制

在 Windows 上安裝

在 Windows 上,能夠在官方網站下載。打開 http://git-scm.com/download/win,而後按默認選項安裝便可。

Git 基礎


獲取 Git 倉庫

這裏有兩種獲取 Git 項目倉庫的主要方法。第一種是將已有項目導入爲 Git 倉庫;第二種是從其餘服務器克隆一個已存在的 Git 倉庫。

在已存在的目錄中初始化倉庫

先建立一個版本庫,首先建立一個空目錄

$ mkdir about_git
$ cd about_git
$ pwd
/home/username/about_git

若打算使用 Git 對上的項目進行追蹤,則在項目目錄路徑使用以下命令:

$ git init
Initialized empty Git repository in /home/username/about_git/.git/

此時能夠發現目錄中多了一個 .git 的目錄,這個目錄就是 Git 用來跟蹤管理版本庫的,儘可能不要修改裏面的內容,防止破壞 Git 倉庫。

克隆服務器上的倉庫

克隆倉庫的命令是 git clone [url],好比:

$ git clone git@gitee.com:username/about_git.git
Cloning into 'about_git'...
remote: Enumerating objects: 3, done.
remote: Counting objects: 100% (3/3), done.
remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
Receiving objects: 100% (3/3), done.
Checking connectivity... done.

Git 支持多種協議,默認 git:// 使用 ssh,但也可使用 https 等其餘協議。

添加文件到倉庫

跟蹤新文件

使用 git add 命令跟蹤文件。假設須要跟蹤 README 文件,使用以下命令:

$ git add README

這時,可使用 git status 命令查看狀態:

$ git status
On branch master

No commits yet

Changes to be committed:
  (use "git rm --cached <file>..." to unstage)
        new file:   README

上面的內容提示 README 文件已被追蹤,處於暫存狀態。

提交文件

這時使用 git commit 命令:

$ git commit

這種方式會啓動文本編輯器啓動以輸入本次提交的說明。

下面是編輯器顯示的文本信息:

# Please enter the commit message for your changes. Lines starting
# with '#' will be ignored, and an empty message aborts the commit.
#
# On branch master
#
# Initial commit
#
# Changes to be committed:
#       new file:   README

一樣,也能夠在 commit 命令後面添加 -m 選項,將提交信息與命令放在同一行,以下所示:

$ git commit -m "Wrote file README"
[master (root-commit) 956d16c] Wrote file README
 1 file changed, 1 insertion(+)
 create mode 100644 README

總結


  1. 初始化 Git 倉庫,使用 git init 命令
  2. 添加文件到倉庫,有如下兩個步驟:

    • 使用 git add <file>,這個命令能夠屢次使用,添加多個文件。
    • 使用 git commit -m <message>,提交文件到倉庫
  3. 使用 git status 查看狀態。

以上就是本篇的主要內容。

未完待續...

歡迎關注微信公衆號《書所集錄》
相關文章
相關標籤/搜索