There is a difference how svn cat works for deleted files. For deleted file commandline `svn cat -r xxx <full_url>` will give error, but 'svn cat <full_url>@xxx` will cat file from the past.
Unfortunately this method will not cat deleted file.
(PECL svn >= 0.1.0)
svn_cat — Récupère le contenu d'un fichier du référentiel
Récupère le contenu du fichier pointé par l'URL repos_url
du référentiel, optionnellement, à la révision revision_no
.
repos_url
URL de l'élément du référentiel.
revision_no
Numéro de révision de l'élément à récupérer ; par défaut, vaut HEAD.
Retourne le contenu de l'élément depuis le référentiel en cas de succès,
et false
si une erreur survient.
Exemple #1 Exemple d'utilisation
Cet exemple récupère le contenu d'un fichier, à la révision 28 :
<?php
$contents = svn_cat('http://www.example.com/svnroot/calc/gui.c', 28)
?>
Cette fonction est EXPERIMENTALE. Le comportement de cette fonction, son nom, et toute la documentation autour de cette fonction peut changer sans préavis dans une prochaine version de PHP. Cette fonction doit être utilisée à vos risques et périls.
There is a difference how svn cat works for deleted files. For deleted file commandline `svn cat -r xxx <full_url>` will give error, but 'svn cat <full_url>@xxx` will cat file from the past.
Unfortunately this method will not cat deleted file.
Just to add to Adam's comment, when retrieving a file contents I found I got the best results using the same revision in both places every time; ie. as follows:
<?php
svn_cat ($url.'@'.$revision, $revision);
?>
The one appended to the URL is the peg revision, and the one in the second paramer is the operative revision.
This seems to cover all the bases.