手冊

第 2 章. 基本版本控制概念

目錄

儲存庫
版本控制模型
檔案共享的問題
鎖定-修改-解鎖方案
複製-修改-合併方案
Subversion 做什麼?
Subversion 的實際應用
工作副本
儲存庫 URL
修訂版本
工作副本如何追蹤儲存庫
摘要

本章節是 Subversion 書籍中相同章節的稍微修改版本。Subversion 書籍的線上版本可在此處取得: https://svnbook.dev.org.tw/

本章節是對 Subversion 的簡短、輕鬆介紹。如果您是版本控制的新手,本章節絕對適合您。我們從一般版本控制概念的討論開始,逐步深入 Subversion 背後的具體概念,並展示 Subversion 的一些簡單使用範例。

即使本章節中的範例顯示人們共享程式原始碼集合,請記住 Subversion 可以管理任何種類的檔案集合 - 它不限於幫助電腦程式設計師。

儲存庫

Subversion 是一個用於共享資訊的集中式系統。其核心是一個儲存庫,它是資料的中央儲存位置。儲存庫以檔案系統樹狀結構的形式儲存資訊 - 檔案和目錄的典型層次結構。許多用戶端連接到儲存庫,然後讀取或寫入這些檔案。透過寫入資料,用戶端使資訊可供其他人使用;透過讀取資料,用戶端從其他人接收資訊。

圖 2.1. 典型的用戶端/伺服器系統

A Typical Client/Server System

那麼為什麼這很有趣呢?到目前為止,這聽起來像是典型檔案伺服器的定義。實際上,儲存庫一種檔案伺服器,但它不是您常見的那種。Subversion 儲存庫的特別之處在於,它記住寫入其中的每一個變更:每個檔案的每個變更,甚至是目錄樹本身的變更,例如檔案和目錄的添加、刪除和重新排列。

當用戶端從儲存庫讀取資料時,它通常只看到檔案系統樹狀結構的最新版本。但是用戶端也具有查看檔案系統先前狀態的能力。例如,用戶端可以提出歷史問題,例如, 這個目錄上週三包含什麼?,或 最後一個變更這個檔案的人是誰,他們做了哪些變更? 這些是任何版本控制系統的核心問題類型:旨在記錄和追蹤資料隨時間變更的系統。

TortoiseSVN 首頁