本篇介紹如何用TortoiseSVN將SVN repository上的專案checkout下來至本機的指定資料夾中。
例如某開發人員第一次將未被版控的Eclipse的Maven專案加入SVN repository後,之後其他開發人員會需要將這個專案checkout至自己的本機中來做後續的開發。
首先找一個要存放專案的資料夾,例如本篇會將SVN repository的Apple專案checkout至D:\Demo\MyProjects\MyApple
中。
Apple專案的SVN repository路徑是https://matt-PC/svn/MyProjects/Apple/trunk
。
在你的公司請向資深同仁詢問實際專案的SVN repository位置。
在D:\Demo\MyProjects\MyApple
按滑鼠右鍵 -> SVN Checkout...
開啟Checkout視窗。
[URL of Repository]欄位輸入專案在SVN repository的路徑
https://matt-PC/svn/MyProjects/Apple/trunk
。
[Checkout Directory]欄位輸入要checkout的資料夾,
D:\Demo\MyProjects\MyApple
其他選項維持預設,按OK便會開始checkout。
Checkout執行便會將檔案加入指定的資料夾。
假如你是第一位checkout專案的人,你應該將專案某些不需被SVN版控的檔案或目錄標記在SVN的global-ignore屬性中。
以Maven專案來例,通常要忽略的檔案包括.settings
,.project
,.classpath
及target
資料夾。
先將下面不需要被SVN版控的檔案刪除。
接著在專案資料夾按滑鼠右鍵 -> TortoiseSVN -> Properties
點選New...
選擇[Other]
在右上角下拉選單選擇svn:global-ignores
,然後在下方欄位填入要忽略的檔案或資料夾.settings
,.project
,.classpath
,target
,然後按OK。
把以上檔案及資料夾設定到svn:global-ignores
屬性後,之後符合規則的檔案將不會被納入SVN版控,也就是這些檔案或目錄有任何變動會被忽略而不會問你要不要提交。
接著我們要將把刪除的檔案及新增的svn:global-ignores
屬性的變動提交到專案的SVN repository。狀態(status)為missing的那些檔案就是被刪除的.settings
,.project
,.classpath
及target
目錄下的檔案。
提交完成後在SVN Server上檢查,確實上面刪除的檔案都已經不見了。只剩下src
及pom.xml
。
接著打開Eclipse,在功能選單選擇File -> Import... -> Maven -> Existing Maven Projects
。
[Root Directory]欄位輸入checkout的目錄位置,也就是D:\Demo\MyProjects\MyApple
,然後按Finish
接著Eclipse就會將MyApple匯入成為專案。
此時在專案的工作目錄會因為匯入了Eclipse而產生一些檔案,都是一些與Eclipse設定有關的檔案,也就是剛剛那些被刪除的.settings
,.project
,.classpath
及target
,不過因為設定了svn:global-ignores
,所以這些檔案的任何修改都會被SVN忽略。
SVN用起來真得很麻煩,但沒辦法,公司版控還是用SVN。
參考:
沒有留言:
張貼留言