PHP Conference Japan 2024

svn_commit

(PECL svn >= 0.1.0)

svn_commit將變更從本地工作副本發送到版本庫

說明

svn_commit(字串 $log, 陣列 $targets, 布林值 $recursive = true): 陣列

將在 targets 陣列中列舉的本地工作副本檔案中進行的變更提交到版本庫,並附帶記錄訊息 log。除非將 recursive 設定為 false,否則 targets 陣列中的目錄將被遞迴提交。

注意事項此函式沒有用於指定驗證的參數,因此必須使用 svn_auth_set_parameter() 設定使用者名稱和密碼。

參數

log

提交的記錄文字字串

targets

要提交的檔案的本地路徑陣列

警告

此參數必須是陣列,不接受單一目標的字串。

注意事項相對路徑將會解析,如同目前工作目錄是包含 PHP 執行檔的目錄。要使用呼叫腳本的工作目錄,請使用 realpath() 或 dirname(__FILE__)。

recursive

布林值旗標,用於停用遞迴提交 targets 陣列中的目錄。預設值為 true

返回值

以以下形式返回陣列

array(
    0 => integer revision number of commit
    1 => string ISO 8601 date and time of commit
    2 => name of committer
)

失敗時返回 false

範例

範例 #1 基本範例

此範例將 calculator 目錄提交到儲存庫,使用使用者名稱 Bob 和密碼 abc123(希望他的密碼更強)。

<?php
svn_auth_set_parameter
(SVN_AUTH_PARAM_DEFAULT_USERNAME, 'Bob');
svn_auth_set_parameter(SVN_AUTH_PARAM_DEFAULT_PASSWORD, 'abc123');
var_dump(svn_commit('Log message of Bob\'s commit', array(realpath('calculator'))));
?>

上述範例將輸出

array(
  0 => 1415,
  1 => '2007-05-26T01:44:28.453125Z',
  2 => 'Bob'
)

備註

警告

此函式為*實驗性*。此函式的行為、其名稱和周圍的文件可能會在未來的 PHP 版本中更改,恕不另行通知。使用此函式需自行承擔風險。

新增備註

使用者貢獻的備註

此頁面沒有使用者貢獻的備註。
To Top