一、版本管理的簡單說明
1. 版本控制的目的
- 可以將某個文件回溯到之前的狀態(tài),甚至將整個項目都回退到過去某個時間點的狀態(tài),修改可追蹤
- 多人協(xié)作開發(fā)
2.版本控制系統(tǒng)分類
本地版本管理
相比復(fù)制不同的文件,標(biāo)記時間備份,它采用某種簡單的數(shù)據(jù)庫來記錄文件的歷次更新差異。并不能夠協(xié)作開發(fā)。
集中式版本管理
集中化的版本控制系統(tǒng)(Centralized Version Control Systems,簡稱 CVCS)。 這類系統(tǒng),諸如 CVS、Subversion 以及 Perforce 等,都有一個單一的集中管理的服務(wù)器,保存所有文件的修訂版本
優(yōu)點
- 管理員管理開發(fā)者權(quán)限方便
- 可以一定程度上看到項目中其他人在做什么
缺點
- 如果管理服務(wù)器宕機,誰都無法提交更新,也就無法協(xié)同工作
- 如果中心數(shù)據(jù)庫所在的磁盤發(fā)生損壞,所有版本歷史將消失
分布式版本管理
于是分布式版本控制系統(tǒng)(Distributed Version Control System,簡稱 DVCS)面世了。 在這類系統(tǒng)中,像 Git、Mercurial、Bazaar 以及 Darcs 等,客戶端并不只提取最新版本的文件快照,而是把代碼倉庫完整地鏡像下來。沒有網(wǎng)絡(luò)的時候,依舊可以本地提交,有網(wǎng)時再push。
二、git簡單說明
起源
誕生于2005年,起源于對linux代碼管理的需求
特點
- 直接記錄快照,而非差異比較
- 近乎所有操作都是本地執(zhí)行
三種狀態(tài)
- 文件三種狀態(tài):已提交(committed)、已修改(modified)和已暫存(staged)
- 由此引入 Git 項目的三個工作區(qū)域的概念:Git 倉庫、工作目錄以及暫存區(qū)域。

-
基本的 Git 工作流程如下:
在工作目錄中修改文件。
暫存文件,將文件的快照放入暫存區(qū)域。
提交更新,找到暫存區(qū)域的文件,將快照永久性存儲到 Git 倉庫目錄。
三、git操作說明
獲取代碼方式
通過https方式獲取
-
通過ssh方式獲取
操作流程:
打開Git Bash
-
生成私鑰和公鑰
ssh-keygen -t rsa -C "name@host"
然后直接點擊 enter enter enter
-
查看id_rsa.pub上傳公鑰到服務(wù)器
默認在 C:\Users\用戶名\.ssh\id_rsa.pub
獲取代碼
-
http
git clone http://ip/path/test.git -
ssh
git clone git@ip:path/test.git git clone ssh://git@ip:path/test.git
常用操作
-
創(chuàng)建新倉庫
git init -
添加與提交
git add <filename>git commit -m "代碼提交信息" -
推送改動
git push origin master -
添加遠程倉庫
git remote add origin <server>