svn_status
Returns the status of working copy files and directories, giving modifications, additions, deletions and other changes to items in the working copy.
Parameters
- path
-
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__).
- flags
-
Any combination of Svn::NON_RECURSIVE, Svn::ALL (regardless of modification status), Svn::SHOW_UPDATES (entries will be added for items that are out-of-date), Svn::NO_IGNORE (disregard svn:ignore properties when scanning for new files) and Svn::IGNORE_EXTERNALS.
Return Values
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:
- path
-
String path to file/directory of this entry on local filesystem.
- text_status
-
Status of item's text. Refer to status constants for possible values.
- repos_text_status
-
Status of item's text in repository. Only accurate if update was set to true. Refer to status constants for possible values.
- prop_status
-
Status of item's properties. Refer to status constants for possible values.
- repos_prop_status
-
Status of item's property in repository. Only accurate if update was set to true. Refer to status constants for possible values.
- locked
-
Whether or not the item is locked. (Only set if true.)
- copied
-
Whether or not the item was copied (scheduled for addition with history). (Only set if true.)
- switched
-
Whether or not the item was switched using the switch command. (Only set if true)
These keys are only set if the item is versioned:
- name
-
Base name of item in repository.
- url
-
URL of item in repository.
- repos
-
Base URL of repository.
- revision
-
Integer revision of item in working copy.
- kind
-
Type of item, i.e. file or directory. Refer to type constants for possible values.
- schedule
-
Scheduled action for item, i.e. addition or deletion. Constants for these magic numbers are not available, they can be emulated by using:
<?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
}
?> - deleted
-
Whether or not the item was deleted, but parent revision lags behind. (Only set if true.)
- absent
-
Whether or not the item is absent, that is, Subversion knows that there should be something there but there isn't. (Only set if true.)
- incomplete
-
Whether or not the entries file for a directory is incomplete. (Only set if true.)
- cmt_date
-
Integer Unix timestamp of last commit date. (Unaffected by update.)
- cmt_rev
-
Integer revision of last commit. (Unaffected by update.)
- cmt_author
-
String author of last commit. (Unaffected by update.)
- prop_time
-
Integer Unix timestamp of last up-to-date time for properties
- text_time
-
Integer Unix timestamp of last up-to-date time for text
Notes
Warning:
This function is EXPERIMENTAL. The behaviour of this function, its name, and surrounding documentation may change without notice in a future release of PHP. This function should be used at your own risk.