The Will Will Web

記載著 Will 在網路世界的學習心得與技術分享

個人的文件檔案版本管理(Subversion)

我們有許多「暫存」的檔案常常亂擺一通,不然就是修修改改的,如果不敢刪除的時候,就會多複製一份起來存到另一個目錄去,等一段時間後檔案就亂七八糟了!

我個人是有將個人的檔案做版本管理的習慣,同一個檔案怎麼修修改改都沒關係,想要抓前天的版本就只要 Show log 一下就可以將前天的版本抓回來了。

以下是我設定 Subversion 的方式,全部都是在 Windows XP 下完成的。

執行環境

必須先安裝 TortoiseSVN 工具

設置 SVN 儲存庫(SVN Repository)

 1. 建立 SVN 儲存庫專用的目錄

    C:\MySVN

2. 建立儲存庫

選取 Native Filesystem (FSFS)

 儲存庫建立完成

 

將個人常用的檔案匯入剛剛建立的 SVN 儲存庫

1. 先將常用的檔案放在一起

2. 首次匯入檔案到剛剛建立的 SVN 儲存庫

透過 "..." 按鈕選取剛剛建立的 SVN 儲存庫目錄, 注意: 目錄名稱是用 file:/// 開頭的網址型態喔!! 

 

3. 刪除所有檔案

4. 從 SVN 儲存庫取出(Checkout)所有檔案

正常的情況下, 應該甚麼都不用改, 直接按下 OK 按鈕即可.

檔案已經取出! 而這些檔案都有一些打勾的綠色圖示!

每次修改後可以將變動的版本重新 Commit 回 SVN 儲存庫

修改後檔案的圖示會變成紅色的驚嘆號

將變更 Commit 到 SVN 儲存庫

寫一些方便自己日後查詢的修訂日誌

設置自動 Commit 批次檔 ( AutoCommit.bat )

@echo off

::■■■■■■■■■■■■■■■■■
::          取得日期時間
::■■■■■■■■■■■■■■■■■

:: Setting environment variables with todoy's date values
for /f "tokens=1-4 delims=-/ " %%i IN ('date /t') DO (
set year=%%i
set month=%%j
set day=%%k
)

for /f "tokens=1-3 delims=:" %%i IN ('time /t') DO (
set hour=%%i
set minute=%%j
)

:for /f "tokens=1 delims= " %%i IN ("%hour%") DO (
:set hour=%%i
:)

set NOW=%year%-%month%-%day% %hour%:%minute%

svn add MyFiles\*.* -q
set LogMessage="Backup on %NOW%"

svn commit -m %LogMessage%