Metadata-Version: 1.0
Name: svn
Version: 0.3.22
Summary: Intuitive Subversion wrapper.
Home-page: https://github.com/dsoprea/PySvn
Author: Dustin Oprea
Author-email: myselfasunder@gmail.com
License: GPL 2
Description: ------------
        Introduction
        ------------
        
        *svn* is a simple Subversion library for Python. I wrote it so that there could be a lightweight and accessible library that was also available on *PyPI*. It is compatible with both Python 2.7 and 3.3+.
        
        I've only implemented the functionality that I have required:
        
        - Listing entries
        - Getting info
        - Getting log
        - Checking-out
        - Exporting
        
        **You are more than welcome to submit pull-requests to add more support for additional subcommands.**
        
        
        -----
        Usage
        -----
        
        Usage is divided between two clients that either allow for access to a local working-directory or a remote repository.
        
        Both clients inherit a common set of methods that work with both local working-directories and remote repositories.
        
        
        LocalClient
        ===========
        
        *LocalClient* allows access to a local working copy.
        
        Example *LocalClient* usage::
        
            import svn.local
            import pprint
        
            r = svn.local.LocalClient('/dev/repo')
            r.export('/tmp/export')
        
            pprint.pprint(r.info())
        
        Output::
        
            { 'commit#revision': 0,
              'commit/author': None,
              'commit/date': datetime.datetime(2014, 4, 1, 5, 50, 27, 826988, tzinfo=tzutc()),
              'commit_author': None,
              'commit_date': datetime.datetime(2014, 4, 1, 5, 50, 27, 826988, tzinfo=tzutc()),
              'commit_revision': 0,
              'entry#kind': 'dir',
              'entry#path': 'working_copy',
              'entry#revision': 0,
              'entry_kind': 'dir',
              'entry_path': 'working_copy',
              'entry_revision': 0,
              'relative_url': '^/',
              'repository/root': 'file:///Users/dustin/development/python/svn/test/repo',
              'repository/uuid': '48195b71-8d94-4528-a019-ec81ebc7e65a',
              'repository_root': 'file:///Users/dustin/development/python/svn/test/repo',
              'repository_uuid': '48195b71-8d94-4528-a019-ec81ebc7e65a',
              'url': 'file:///Users/dustin/development/python/svn/test/repo',
              'wc-info/depth': None,
              'wc-info/schedule': None,
              'wc-info/wcroot-abspath': None,
              'wcinfo_depth': None,
              'wcinfo_schedule': None,
              'wcinfo_wcroot_abspath': None }
        
        
        RemoteClient
        ============
        
        *RemoteClient* allows access to a remote repository.
        
        - checkout(path)
        
        Example *RemoteClient* usage::
        
            import svn.remote
        
            r = svn.remote.RemoteClient('https://repo.local/svn')
            r.checkout('/tmp/working')
        
        
        Common Functionality
        ====================
        
        These methods are available on both clients.
        
        - info()
        - export(path)
        - cat(rel_filepath)
        - log_default(timestamp_from_dt=None, timestamp_to_dt=None, limit=None)
        
        
        Important
        =========
        
        Previously, the *LocalClient* and *RemoteClient* classes were exposed at the 
        package level:
        
        - svn.LocalClient
        - svn.RemoteClient
        
        Unfortunately, this interfered with dependency management during installation.
        The imports will now have to be, respectively:
        
        - svn.local (for LocalClient)
        - svn.remote (for RemoteClient)
        
        We're sorry for the inconvenience.
        
Keywords: svn subversion
Platform: UNKNOWN
