• MorphOS Developer
    geit
    Posts: 1031 from 2004/9/23
    Actually it is quite simple.

    ---------------------------------
    Set up the svn server
    ---------------------------------
    Install SVN binaries to GG:usr/bin

    First edit your env(arc):sys/inetd.conf: (change path so it matches your config)

    svn stream tcp nowait root gg:usr/bin/svnserve svnserve -i -r /sourcecodes/repository/

    Edit env(ARC):sys/services to contain this:

    svn 3690/tcp

    ------------------------------------------------
    create your first project in repository.
    We name it "newapplication"

    Again adapt path to match your repository
    location.
    ------------------------------------------------

    cd sourcecodes:repository
    svnadmin create newapplication

    Now we need to edit the server config for the new project
    "newapplication". Type

    ed newapplication/conf/svnserve.config

    In editor change the following lines, so they match the lines here.
    Do not touch any other lines. No ## for these lines!!

    anon-access = none
    auth-access = write

    password-db = passwd

    realm = newapplication

    Save file. Now we need to setup the passwords for this project. Type

    ed newapplication/conf/passwd

    and add your user names and password behind the [users] line.

    yourname = password4711

    Save file. Now the repository is ready for usage. Time to add existing sources to your new repository. Lets say you have a "Sourcecodes:" drive containing a drawer for each project. So "Sourcecodes:newapplication" is the one we want to add. You may want to perform a "make clean" before import to avoid useless files in repository.

    cd sourcecodes:
    svn import newapplication svn://192.168.x.y/newapplication -m "initial import"

    After import you need to checkout the source again to be able to use it. Rename the original sources, just in case.

    svn checkout svn://192.168.x.y/newapplication

    After entering user name and password the source gets transferred. It is now a working SVN instance.

    Once you changed one or more files inside your repository. commit them.

    svn commit -m "fixed all my typos"

    if you work on several systems, then you should update the stuff to get recent changes transferred to your current system.

    svn update

    if you need to add a file or drawer to repository use the add option

    svn add newdrawer
    svn add funnyfile.c

    these are only marked for addition. Use

    svn commit -m "added missing files and drawer"

    Renaming files works like adding

    svn rename oldname newname

    and off course you need to commit the change to make it valid.

    svn remove obsolete

    will remove files. And again you need to commit.

    Sometimes, when you want to delete a file that what changed before, svn blocks rename and delete operations, as you would loose these changes especially when using delete. So you can commit them first or use the --force option to force svn to perform the operation.

    That is basically all. Compared to cvs svn is quite simple.

    Geit

    [ Edited by geit 22.10.2011 - 21:18 ]
  • »22.10.11 - 19:03
    Profile