Subversion

如何從 SVN (subversion) repo 目錄+文件中提取目前版本

  • July 15, 2016

svn checkout https://server/repos/proj1我有一個通過 Web 界面(等)管理的 SVN 儲存庫,一切正常。

現在,commit我希望將最新版本複製到目錄中,例如/home/user/somewhere/proj1/rev102/在伺服器上使用 shell 命令。

如果我沒記錯的話,您可以在每個命令上呼叫一個命令,commit並且我不太擔心它是如何完成的(失敗我可以創建一個cron工作),但是:

如何使用本地執行的 shell 腳本從 svn repo 目錄/文件中提取最新文件,而不使用svn updatesvn 登錄機制等?所有文件都在那裡並且可以從 shell 訪問,所以這應該很容易嗎?

svn login如果您對 svn 數據庫有直接文件訪問權限,則不需要。在伺服器上的某個地方,您擁有 svn 數據庫的根目錄,比如 directory /some/dir。它有子目錄dbconf和。您可以使用在同一台機器上簽出此儲存庫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.tmplhooks/post-commitin /some/dir

引用自:https://unix.stackexchange.com/questions/296118