Subversion
如何從 SVN (subversion) repo 目錄+文件中提取目前版本
svn checkout https://server/repos/proj1
我有一個通過 Web 界面(等)管理的 SVN 儲存庫,一切正常。現在,
commit
我希望將最新版本複製到目錄中,例如/home/user/somewhere/proj1/rev102/
在伺服器上使用 shell 命令。如果我沒記錯的話,您可以在每個命令上呼叫一個命令,
commit
並且我不太擔心它是如何完成的(失敗我可以創建一個cron
工作),但是:如何使用本地執行的 shell 腳本從 svn repo 目錄/文件中提取最新文件,而不使用
svn update
svn 登錄機制等?所有文件都在那裡並且可以從 shell 訪問,所以這應該很容易嗎?
svn login
如果您對 svn 數據庫有直接文件訪問權限,則不需要。在伺服器上的某個地方,您擁有 svn 數據庫的根目錄,比如 directory/some/dir
。它有子目錄db
、conf
和。您可以使用在同一台機器上簽出此儲存庫hooks``locks
cd /home/user/somewhere/ svn list file:///some/dir/ svn checkout file:///some/dir/repos/proj1/rev102 proj1/rev102
您也可以
svn update
在新創建的子目錄中進行操作。正如您所說,您可以在每次送出時呼叫一個命令。編輯文件並將其重命名
hooks/post-commit.tmpl
為hooks/post-commit
in/some/dir
。