Sh3ll
OdayForums


Server : Apache
System : Linux server1.cgrithy.com 3.10.0-1160.95.1.el7.x86_64 #1 SMP Mon Jul 24 13:59:37 UTC 2023 x86_64
User : nobody ( 99)
PHP Version : 8.1.23
Disable Function : NONE
Directory :  /usr/share/doc/git-1.8.3.1/contrib/svn-fe/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //usr/share/doc/git-1.8.3.1/contrib/svn-fe/svnrdump_sim.py
#!/usr/bin/python
"""
Simulates svnrdump by replaying an existing dump from a file, taking care
of the specified revision range.
To simulate incremental imports the environment variable SVNRMAX can be set
to the highest revision that should be available.
"""
import sys, os

if sys.hexversion < 0x02040000:
        # The limiter is the ValueError() calls. This may be too conservative
        sys.stderr.write("svnrdump-sim.py: requires Python 2.4 or later.\n")
        sys.exit(1)

def getrevlimit():
        var = 'SVNRMAX'
        if var in os.environ:
                return os.environ[var]
        return None

def writedump(url, lower, upper):
        if url.startswith('sim://'):
                filename = url[6:]
                if filename[-1] == '/': filename = filename[:-1] #remove terminating slash
        else:
                raise ValueError('sim:// url required')
        f = open(filename, 'r');
        state = 'header'
        wroterev = False
        while(True):
                l = f.readline()
                if l == '': break
                if state == 'header' and l.startswith('Revision-number: '):
                        state = 'prefix'
                if state == 'prefix' and l == 'Revision-number: %s\n' % lower:
                        state = 'selection'
                if not upper == 'HEAD' and state == 'selection' and l == 'Revision-number: %s\n' % upper:
                        break;

                if state == 'header' or state == 'selection':
                        if state == 'selection': wroterev = True
                        sys.stdout.write(l)
        return wroterev

if __name__ == "__main__":
        if not (len(sys.argv) in (3, 4, 5)):
                print("usage: %s dump URL -rLOWER:UPPER")
                sys.exit(1)
        if not sys.argv[1] == 'dump': raise NotImplementedError('only "dump" is suppported.')
        url = sys.argv[2]
        r = ('0', 'HEAD')
        if len(sys.argv) == 4 and sys.argv[3][0:2] == '-r':
                r = sys.argv[3][2:].lstrip().split(':')
        if not getrevlimit() is None: r[1] = getrevlimit()
        if writedump(url, r[0], r[1]): ret = 0
        else: ret = 1
        sys.exit(ret)

ZeroDay Forums Mini