日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
面試官:說(shuō)說(shuō)你對(duì)版本管理的理解?常用的版本管理工具有哪些?

本文轉(zhuǎn)載自微信公眾號(hào)「JS每日一題」,作者灰灰。轉(zhuǎn)載本文請(qǐng)聯(lián)系JS每日一題公眾號(hào)。

一、是什么

版本控制(Version control),是維護(hù)工程藍(lán)圖的標(biāo)準(zhǔn)做法,能追蹤工程藍(lán)圖從誕生一直到定案的過(guò)程。此外,版本控制也是一種軟件工程技巧,借此能在軟件開(kāi)發(fā)的過(guò)程中,確保由不同人所編輯的同一程序文件都得到同步

透過(guò)文檔控制,能記錄任何工程項(xiàng)目?jī)?nèi)各個(gè)模塊的改動(dòng)歷程,并為每次改動(dòng)編上序號(hào)

一種簡(jiǎn)單的版本控制形式如下:賦給圖的初版一個(gè)版本等級(jí)“A”。當(dāng)做了第一次改變后,版本等級(jí)改為“B”,以此類(lèi)推

版本控制能提供項(xiàng)目的設(shè)計(jì)者,將設(shè)計(jì)恢復(fù)到之前任一狀態(tài)的選擇權(quán)

簡(jiǎn)言之,你的修改只要提到到版本控制系統(tǒng),基本都可以找回,版本控制系統(tǒng)就像一臺(tái)時(shí)光機(jī)器,可以讓你回到任何一個(gè)時(shí)間點(diǎn)

二、有哪些

版本控制系統(tǒng)在當(dāng)今的軟件開(kāi)發(fā)中,被認(rèn)為是理所當(dāng)然的配備工具之一,根據(jù)類(lèi)別可以分成:

  • 本地版本控制系統(tǒng)
  • 集中式版本控制系統(tǒng)
  • 分布式版本控制系統(tǒng)

本地版本控制系統(tǒng)

結(jié)構(gòu)如下圖所示:

優(yōu)點(diǎn):

  • 簡(jiǎn)單,很多系統(tǒng)中都有內(nèi)置
  • 適合管理文本,如系統(tǒng)配置

缺點(diǎn):

  • 其不支持遠(yuǎn)程操作,因此并不適合多人版本開(kāi)發(fā)

集中式版本控制系統(tǒng)

結(jié)構(gòu)如下圖所示:

優(yōu)點(diǎn):

  • 適合多人團(tuán)隊(duì)協(xié)作開(kāi)發(fā)
  • 代碼集中化管理

缺點(diǎn):

  • 單點(diǎn)故障
  • 必須聯(lián)網(wǎng),無(wú)法單機(jī)工作

代表工具有SVN、CVS:

SVN

TortoiseSVN是一款非常易于使用的跨平臺(tái)的 版本控制/版本控制/源代碼控制軟件

CVS

CVS是版本控制系統(tǒng),是源配置管理(SCM)的重要組成部分。使用它,您可以記錄源文件和文檔的歷史記錄

老牌的版本控制系統(tǒng),它是基于客戶端/服務(wù)器的行為使得其可容納多用戶,構(gòu)成網(wǎng)絡(luò)也很方便

這一特性使得CVS成為位于不同地點(diǎn)的人同時(shí)處理數(shù)據(jù)文件(特別是程序的源代碼)時(shí)的首選

分布式版本控制系統(tǒng)

結(jié)構(gòu)如下圖:

優(yōu)點(diǎn):

  • 適合多人團(tuán)隊(duì)協(xié)作開(kāi)發(fā)
  • 代碼集中化管理
  • 可以離線工作
  • 每個(gè)計(jì)算機(jī)都是一個(gè)完整倉(cāng)庫(kù)

分布式版本管理系統(tǒng)每個(gè)計(jì)算機(jī)都有一個(gè)完整的倉(cāng)庫(kù),可本地提交,可以做到離線工作,則不用像集中管理那樣因?yàn)閿嗑W(wǎng)情況而無(wú)法工作

代表工具為Git、HG:

Git

Git是目前世界上最先進(jìn)的分布式版本控制系統(tǒng),旨在快速高效地處理從小型到大型項(xiàng)目的所有事務(wù)

特性:易于學(xué)習(xí),占用內(nèi)存小,具有閃電般快速的性能

使用Git和Gitlab搭建版本控制環(huán)境是現(xiàn)在互聯(lián)網(wǎng)公司最流行的版本控制方式

HG

Mercurial是一個(gè)免費(fèi)的分布式源代碼管理工具。它可以有效地處理任何規(guī)模的項(xiàng)目,并提供簡(jiǎn)單直觀的界面

Mercurial是一種輕量級(jí)分布式版本控制系統(tǒng),采用 Python語(yǔ)言實(shí)現(xiàn),易于學(xué)習(xí)和使用,擴(kuò)展性強(qiáng)

三、總結(jié)

版本控制系統(tǒng)的優(yōu)點(diǎn)如下:

記錄文件所有歷史變化,這是版本控制系統(tǒng)的基本能力

隨時(shí)恢復(fù)到任意時(shí)間點(diǎn),歷史記錄功能使我們不怕改錯(cuò)代碼了

支持多功能并行開(kāi)發(fā),通常版本控制系統(tǒng)都支持分支,保證了并行開(kāi)發(fā)的可行

多人協(xié)作并行開(kāi)發(fā),對(duì)于多人協(xié)作項(xiàng)目,支持多人協(xié)作開(kāi)發(fā)的版本管理將事半功倍

參考文獻(xiàn)

https://pm.readthedocs.io/vcs/understanding.html

https://zh.wikipedia.org/wiki/%E7%89%88%E6%9C%AC%E6%8E%A7%E5%88%B6


網(wǎng)站欄目:面試官:說(shuō)說(shuō)你對(duì)版本管理的理解?常用的版本管理工具有哪些?
瀏覽地址:http://www.5511xx.com/article/coopshd.html