git版本控制器

VCS:Version Control System版本控制系統

1.記錄文件的歷史變化

2.隨時可以恢復到任何歷史狀態

3.多人協作開發或修改

4.錯誤恢復

5.多功能並行開發    --SVN中的分支功能

repository     --存放所有文件及其歷史信息

checkout     --取出或切換到指定版本的文件

version     --記錄標識一個版本(編號或者其他版本)

tag             


--記錄標識一個主要版本(1.0 2.0 3.0)里程碑版本


LVCS:本地版本控制系統

CVCS:集中化版本控制系統

DVCS:分佈式版本控制系統




LVCS:使用本地硬盤即可存儲,不支持網絡功能。

    如:RCS軟件

wKiom1TA_eDAWwsrAAEgR-shQJE060.jpg

CVCS:只支持網絡,服務器上保存完整的文件

    如:CVS,SVN軟件

    單點故障是指CVCS服務器出現故障,那麼其它的操作都不能工作

wKiom1TA_tTTsi4oAAFFdyT68E0540.jpg

DVCS

    分佈式:每個計算機都有一套完整的版本控制器。(分佈式是不是類似鏡像的意思???)

wKiom1TA__ThYkxpAAE5ZyJL7ho190.jpg

分佈式與集中式的概念




git版本控制系統

git的取名有點小意思    first“Linux”now“git”

git的原理:保存快照,而非區別

git的所有操作都是在本地執行的,多數操作均爲添加操作



git的3種工作區域

    1.working directory

    2.staging area

    3.git repository

在working區編輯,修改文件..然後暫存到staging 區域..最終提交到 git repository形成一本新的版本,並且對他人可見

wKiom1TBBO7Q3QHlAAEpatYJVdo888.jpg




安裝git

    yum install -y git

查看git的版本信息    

    yum --version   

設置基本信息:

    主要是爲了區分這個文件都是由誰誰誰提交的

    --global是表示對全局倉庫生效的

wKioL1TBCVXCu63vAADd6P6BXys180.jpg


創建倉庫

    git init 初始化之後會生成.git隱藏文件...然後所有的文件都保存在這個.git文件裏面

wKiom1TBCvyQr-HOAADnsa1EZ6I463.jpg

    

添加文件:將文件從 工作區域 先添加到了 暫存區域    

    git status     

    git add readme.txt    --單個文件

    git add *             --添加所有文件

*********************************

放入下面:

刪除

wKioL1TBF__TeDN3AAC5qTzFh38805.jpg

重命名

wKiom1TBF13ScqHAAAD5nHBiZG8780.jpg

git 遠程操作

    遠程倉庫和開發者機器上的內容是一模一樣的...

    遠程服務器起到了備份+分享的主要2個作用    

    遠程倉庫保存的是git 倉庫..不包含暫存 和 工作區域 文件

wKiom1TBGWWxETflAADXlUmDx5A879.jpg

支持4種協議:

    local本地

    ssh 這個最常用

    git

    http/https    開源項目用的比較多

wKioL1TBG3jB4uwvAADSimPMTv4299.jpg

wKiom1TBGumA_rhmAAD75cDGh7k106.jpg



*********************************

    git commit -m "init repo"    --將 暫存區域 的文件 提交到 git倉庫區域

wKiom1TBDkeS8UWsAAElLcfk7aA900.jpg

    git status  

    [root@localhost IterCast-Demo]# git status    
    # On branch master
    #
    # Initial commit
    #
    # Untracked files:
    #   (use "git add <file>..." to include in what will be committed)
    #
    #	README
    #	hellogit.rb
    nothing added to commit but untracked files present (use "git add" to track)
    [root@localhost IterCast-Demo]#
Untracked 表示 文件還在工作目錄...
[root@localhost IterCast-Demo]# git add README 
[root@localhost IterCast-Demo]# git add hellogit.rb 
[root@localhost IterCast-Demo]# git status
# On branch master
#
# Initial commit
#
# Changes to be committed:
#   (use "git rm --cached <file>..." to unstage)
#
#	new file:   README
#	new file:   hellogit.rb
#
[root@localhost IterCast-Demo]

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章