(PECL svn:0.1-0.2)
svn_status — Returns the status of working copy files and directories
Returns the status of working copy files and directories, giving modifications, additions, deletions and other changes to items in the working copy.
Local path to file or directory to retrieve status of.
Note: Relative paths will be resolved as if the current working directory was the one that contains the PHP binary. To use the calling script's working directory, use realpath() or dirname(__FILE__).
Whether or not to recursively descend into directories to retrieve status. Default is TRUE.
Whether or not to return all items, regardless of modification status. Default is FALSE.
Whether or not to return information from the server on whether or not the working copy is up-to-date (specifically, entries will be added for items that are out-of-date along with the regular modification checks). Default is FALSE.
Whether or not to disregard svn:ignore properties when scanning for new files. Default is FALSE.
Returns a numerically indexed array of associative arrays detailing the status of items in the repository:
Array ( [0] => Array ( // information on item ) [1] => ... )
The information on the item is an associative array that can contain the following keys:
These keys are only set if the item is versioned:
<?php
if (!defined('svn_wc_schedule_normal')) {
define('svn_wc_schedule_normal', 0); // nothing special
define('svn_wc_schedule_add', 1); // item will be added
define('svn_wc_schedule_delete', 2); // item will be deleted
define('svn_wc_schedule_replace', 3); // item will be added and deleted
}
?>
本函数是实验性的。本函数的行为,包括函数名称以及其它任何关于本函数的文档可能会在没有通知的情况下随 PHP 以后的发布而改变。使用本函数风险自担。
Example#1 Basic example
This example demonstrates a basic, theoretical usage of this function.
<?php
print_r(svn_status(realpath('wc')));
?>
上例的输出类似于:
Array ( [0] => Array ( [path] => /home/bob/wc/sandwich.txt [text_status] => 8 // item was modified [repos_text_status] => 1 // no information available, use update [prop_status] => 3 // no changes [repos_prop_status] => 1 // no information available, use update [name] => sandwich.txt [url] => http://www.example.com/svnroot/deli/trunk/sandwich.txt [repos] => http://www.example.com/svnroot/ [revision] => 123 [kind] => 1 // file [schedule] => 0 // no special actions scheduled [cmt_date] => 1165543135 [cmt_rev] => 120 [cmt_author] => Alice [prop_time] => 1180201728 [text_time] => 1180201729 ) )