PHP 5.4.31 Released

SVN Functions

Table of Contents

  • svn_add — Schedules the addition of an item in a working directory
  • svn_auth_get_parameter — Retrieves authentication parameter
  • svn_auth_set_parameter — Sets an authentication parameter
  • svn_blame — Get the SVN blame for a file
  • svn_cat — Returns the contents of a file in a repository
  • svn_checkout — Checks out a working copy from the repository
  • svn_cleanup — Recursively cleanup a working copy directory, finishing incomplete operations and removing locks
  • svn_client_version — بازگرداندن نسخه کتابخانه کلاینت SVN
  • svn_commit — Sends changes from the local working copy to the repository
  • svn_delete — Delete items from a working copy or repository.
  • svn_diff — Recursively diffs two paths
  • svn_export — Export the contents of a SVN directory
  • svn_fs_abort_txn — توقف تراکنش بازگرداندن true اگر همه چیز خوب باشد در غیر این صورت false
  • svn_fs_apply_text — ساخت و بازگرداندن جریان استفاده شده برای جایگزینی
  • svn_fs_begin_txn2 — ساخت تراکنش جدید
  • svn_fs_change_node_prop — بازگرداندن true اگر همه چیز خوب باشد در غیر این صورت false
  • svn_fs_check_path — تعیین چگونگی مورد مسیر در fsroot انبار داده شده
  • svn_fs_contents_changed — بازگرداندن true اگر محتوا متفاوت باشد در غیر این صورت false
  • svn_fs_copy — کپی فایل یا دایرکتوری بازگرداندن true اگر همه چیز خوب باشد در غیر این صورت false
  • svn_fs_delete — حذف فایل یا دایرکتوری بازگرداندن true اگر همه چیز خوب باشد در غیر این صورت false
  • svn_fs_dir_entries — به شمار آوردن ورودی دایرکتوری در مسیر بازگرداندن hash نام‌های dir نوع فایل
  • svn_fs_file_contents — بازگرداندن جریان برای دسترسی به محتوای فایل از نسخه داده fs
  • svn_fs_file_length — بازگرداندن طول فایل از نسخه داده شده fs
  • svn_fs_is_dir — بازگرداندن true اگر مسیر به دایرکتوری اشاره کند در غیر این صورت false
  • svn_fs_is_file — بازگرداندن true اگر مسیر به فایل اشاره کند در غیر این صورت false
  • svn_fs_make_dir — ساخت دایرکتوری خالی جدید بازگرداندن true اگر همه چیز خوب باشد در غیر این صورت false
  • svn_fs_make_file — ساخت فایل جدید خالی بازگرداندن true اگر همه چیز خوب باشد در غیر این صورت false
  • svn_fs_node_created_rev — بازگرداندن بازبینی در مسیر ساخت fsroot
  • svn_fs_node_prop — بازگرداندن مقدار خاصیت برای گره
  • svn_fs_props_changed — بازگرداندن true اگر props متفاوت باشد در غیر این صورت false
  • svn_fs_revision_prop — دریافت مقدار خاصیت نامدار
  • svn_fs_revision_root — دریافت هندل نسخه مشخص ریشه انبار
  • svn_fs_txn_root — ساخت و بازگرداندن ریشه تراکنش
  • svn_fs_youngest_rev — بازگرداندن شماره جدیدترین بازبینی در سیستم فایل
  • svn_import — Imports an unversioned path into a repository
  • svn_log — Returns the commit log messages of a repository URL
  • svn_ls — Returns list of directory contents in repository URL, optionally at revision number
  • svn_mkdir — ساخت دایرکتوری در کپی یا انبار به کار برده شده
  • svn_repos_create — ساخت انبار subversion در مسیر
  • svn_repos_fs_begin_txn_for_commit — ساخت تراکنش جدید
  • svn_repos_fs_commit_txn — انجام تراکنش و بازگرداندن بازبینی جدید
  • svn_repos_fs — دریافت هندل سیستم فایل برای انبار
  • svn_repos_hotcopy — ساخت کپی جدید repos در repospath; کپی آن به destpath
  • svn_repos_open — باز کردن قفل مشترک انبار
  • svn_repos_recover — اجرای رویه بازیابی انبار در مسیر
  • svn_revert — برگرداندن تغییرات به کپی به کار برده شده
  • svn_status — Returns the status of working copy files and directories
  • svn_update — بروزرسانی کپی به کار برده شده
add a note add a note

User Contributed Notes 6 notes

up
2
bohwaz
1 year ago
This extension also gives you access to an object API that is currently not documented anywhere. It uses the Svn, SvnWc, SvnWcSchedule and SvnNode classes. So you can't redeclare those names.

Here are some basics on how to use it:

<?php
$svn
= new Svn;
$log = $svn->log('https://svn.example/trunk/', Svn::HEAD);
?>

Basically you can use all functions documented here by replacing the svn_ prefix with $svn-> object. Same for constants, most can be used directly from the objects.

If you're interested, make sure to check the extension source code to find out more.
up
1
j dot saterfiel at gmail dot com
1 year ago
The PHP SVN library functions as of 1.02 that are not listed in this documentation and their signatures

array svn_info(string path [, bool recurse = true [, int revision = -1]])

resource svn_copy(string log, string src_path, string destination_path [, bool working_copy = true [, int revision = -1]])

mixed svn_move(string src_path, string dst_path [, bool force = false])

mixed svn_proplist(string path [, bool recurse = false, [int revision]])

mixed svn_propget(string path, string property_name [, bool recurse = false [, int revision]])

bool svn_lock(string comment, mixed targets [, bool steal_lock = false])

bool svn_unlock(mixed targets [, bool break_lock= false])

resource svn_switch(string path, string url [, bool working_copy = true])

You can also use the new Svn() object for these $svn->lock()

In general any function should work just like the svn command line version.  For instance svn_info can be used against a remote url or a local path and svn_copy can also be used for local or remote operations.
up
0
chris dot lawrence at ljg dot com
4 years ago
I also submitted this as a bug (since its about missing documentation).

This documentation does not mention the "svn_delete" command, but it was added in version 0.4.  You can check the release notes here:
http://pecl.php.net/package/svn/0.4

Also, you could look at the contents of the current source code (svn-0.5.1/svn.c).

But what you really need to know is that the svn_delete command works correctly with this prototype:
svn_delete(string path [, bool force = true])

It returns true on success and false on failure.
up
0
Pieter van Ginkel
6 years ago
The Subversion functions work quite well for me, after some searching. I needed some time though to find out how they all worked together, but this is a basic example of svn_fs_is_file:

<?php

# Get a handle to the on-disk repository. Note that this
# is NOT a checked out project, but the actual svn repository!

$repos_handle = svn_repos_open('/var/lib/svn');
$fs_handle = svn_repos_fs($repos_handle);

# Now we need to open a revision because that's what the
# svn_fs_* methods need. You'll probably want the latest
# revision and we have a helper method for that.

$youngest_rev = svn_fs_youngest_rev($fs_handle);
$fs_rev_handle = svn_fs_revision_root($fs_handle, $youngest_rev);

# Now we can actually start doing stuff, for example the
# svn_fs_is_file call:

print_r(svn_fs_is_file($fs_rev_handle, '/a-file.txt'));

?>

There is one important thing to note about this all. You cannot let the handles expire while doing any calls to svn_fs_*. When implementing a helper class, I cached the first and third handle, but not the second one. PHP crashes hard when you do this. Keep references to all handles you get while you're calling the svn_fs_* methods.
up
0
tbrendstrup
6 years ago
"[Editorial note: These constants are defined by the Subversion library itself and may change without notice (although things tend to be quite stable).]"

The subversion developers have a policy not to change stuff like this without changing the major version number, so these should be valid at least until subversion 2.0.0 is released. (more values might be added, but the existing ones won't change).
up
0
pierre dot beaumadier at rhapso dot fr
6 years ago
[Editorial note: These constants are defined by the Subversion library itself and may change without notice (although things tend to be quite stable).]

For information, here are the numeric values I got for the constants :

Working copy status constants :
    * svn_wc_status_none => 1
    * svn_wc_status_unversioned => 2
    * svn_wc_status_normal => 3
    * svn_wc_status_added => 4
    * svn_wc_status_missing => 5
    * svn_wc_status_deleted => 6
    * svn_wc_status_replaced => 7
    * svn_wc_status_modified => 8
    * svn_wc_status_merged => 9
    * svn_wc_status_conflicted => 10
    * svn_wc_status_ignored => 11
    * svn_wc_status_obstructed => 12
    * svn_wc_status_external => 13
    * svn_wc_status_incomplete => 14

Node type constants :
    * svn_node_none => 0
    * svn_node_file => 1
    * svn_node_dir => 2
    * svn_node_unknown => 3
To Top