有兩種方法可以將新文件引入Subversion版本庫:svn import和svn add,我們將在本章討論svn import,而會在回顧Subversion的典型一天時討論svn add。
svn import是將未版本化文件匯入版本庫的最快方法,會根據需要建立中介目錄。svn import不需要一個工作副本,你的文件會直接提交到版本庫,這通常用在你希望將一組文件加入到Subversion版本庫時,例如:
$ svnadmin create /usr/local/svn/newrepos
$ svn import mytree file:///usr/local/svn/newrepos/some/project \
-m "Initial import"
Adding mytree/foo.c
Adding mytree/bar.c
Adding mytree/subdir
Adding mytree/subdir/quux.h
Committed revision 1.
在上一個例子裡,將會拷貝目錄mytree到版本庫的some/project下:
$ svn list file:///usr/local/svn/newrepos/some/project bar.c foo.c subdir/
注意,在匯入之後,原來的目錄樹並沒有轉換成工作副本,為了開始工作,你還是需要運行svn checkout導出一個工作副本。
儘管Subversion的靈活性允許你自由部署版本庫,但我們有一套推薦的方式,建立一個trunk目錄來保存開發的「主線」,一個branches目錄存放分支拷貝,tags目錄保存標籤拷貝,例如:
$ svn list file:///usr/local/svn/repos /trunk /branches /tags
你將會在第 4 章 分支與合併看到標籤和分支的詳細內容,關於設定多個項目的訊息,可以看「版本庫部署」一節和「規劃你的版本庫結構」一節中關於「項目根目錄」的內容。