The current version of svn does not seem to indicate an error properly when passed an invalid string, so it's important to check your paths and to clean them before calling svn or it will just not work.
Under Windows getting the format correctly is a bit tricky, so here's the format it wants:
file:///c:/path/to/repos
Note the following:
1) The extra slash after the protocol designates 'root' under Unix (file:///path/to/repos points to /path/to/repos in Unix), but it seems to have no real meaning in the string on Windows (?).
2) Paths are usually reported with backslashes, so you'll need to replace those with slashes manually before handing them off to Subversion.
svn_checkout
(PECL svn >= 0.1.0)
svn_checkout — Checks out a working copy from the repository
Descrierea
$repos
, string $targetpath
[, int $revision
[, int $flags = 0
]] )
Checks out a working copy from the repository at repos
to targetpath at revision revision.
Parametri
-
repos -
String URL path to directory in repository to check out.
-
targetpath -
String local path to directory to check out in to
Notă: Căile relative vor fi rezolvate ca și cum directorul curent este cel ce conține binarul PHP. Pentru a utiliza directorul de lucru al scriptului apelant, utilizați realpath() sau dirname(__FILE__).
-
revision -
Integer revision number of repository to check out. Default is HEAD, the most recent revision.
-
flags -
Any combination of
SVN_NON_RECURSIVEandSVN_IGNORE_EXTERNALS.
Valorile întoarse
Întoarce valoarea TRUE în cazul
succesului sau FALSE în cazul eșecului.
Note
Această funcție este EXPERIMENTALĂ. Comportamentul acestei funcții, denumirea sa și orice alte aspecte documentate în privința acestei funcții pot să fie modificate fără preaviz într-o versiune viitoare a PHP. Utilizați această funcție la propriul risc.
Exemple
Example #1 Basic example
This example demonstrates how to check out a directory from a repository to a directory named calc:
<?php
svn_checkout('http://www.example.com/svnroot/calc/trunk', dirname(__FILE__) . '/calc');
?>
The dirname(__FILE__) call is necessary in order to convert the calc relative path into an absolute one. If calc exists, you can also use realpath() to retrieve an absolute path.
Vedeți de asemenea
- svn_add() - Schedules the addition of an item in a working directory
- svn_commit() - Sends changes from the local working copy to the repository
- svn_status() - Returns the status of working copy files and directories
- svn_update() - Update working copy
- » SVN documentation on svn checkout
