(PECL svn >= 0.1.0)
svn_status — Retorna o status dos arquivos e diretórios da cópia de trabalho
Retorna o status dos arquivos e diretórios da cópia de trabalho, fornecendo modificações, adições, exclusões e outras alterações nos itens da cópia de trabalho.
pathCaminho local para o arquivo ou diretório para recuperar o status.
Nota: Os caminhos relativos serão resolvidos como se o diretório de trabalho atual fosse aquele que contém o binário do PHP. Para usar o diretório de trabalho do script de chamada, use realpath() ou dirname(__FILE__).
flags
Qualquer combinação de Svn::NON_RECURSIVE,
Svn::ALL (independentemente do status da modificação),
Svn::SHOW_UPDATES (entradas serão adicionadas para itens
desatualizados), Svn::NO_IGNORE (desconsidera as propriedades
svn:ignore ao procurar por novos arquivos)
e Svn::IGNORE_EXTERNALS.
Retorna um array indexado numericamente de arrays associativos detalhando o status dos itens no repositório:
Array (
[0] => Array (
// informação sobre o item
)
[1] => ...
)
As informações sobre o item são um array associativo que pode conter as seguintes chaves:
update estiver definido como true.
Consulte as constantes de status para obter os valores possíveis.
update estiver definido como true. Consulte as constantes de status para obter os valores possíveis.
true.)
true.)
true)
Essas chaves só serão definidas se o item for versionado:
<?php
if (!defined('svn_wc_schedule_normal')) {
define('svn_wc_schedule_normal', 0); // nada de especial
define('svn_wc_schedule_add', 1); // item será adicionado
define('svn_wc_schedule_delete', 2); // item será excluído
define('svn_wc_schedule_replace', 3); // item será adicionado e excluído
}
?>true.)
true.)
true.)
update.)
update.)
update.)
Exemplo #1 Exemplo básico
Este exemplo demonstra um uso teórico básico desta função.
<?php
print_r(svn_status(realpath('wc')));
?>O exemplo acima produzirá algo semelhante a:
Array (
[0] => Array (
[path] => /home/bob/wc/sandwich.txt
[text_status] => 8 // item foi modificado
[repos_text_status] => 1 // nenhuma informação disponível, use 'update'
[prop_status] => 3 // sem alterações
[repos_prop_status] => 1 // nenhuma informação disponível, 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 // arquivo
[schedule] => 0 // nenhuma ação especial programada
[cmt_date] => 1165543135
[cmt_rev] => 120
[cmt_author] => Alice
[prop_time] => 1180201728
[text_time] => 1180201729
)
)
Esta função é EXPERIMENTAL. O comportamento desta função, seu nome e documentação poderão mudar sem aviso prévio em futuras versões do PHP. Use por sua conta e risco.