Requirements:
- A Unix/Linux system. OOoSVN will not work under Windows. MacOSX has been
reported as working if the required packages are installed but is unsupported as
I don't have a Mac to test on.
- OOo 2.0.4 or later, tested with 3.2.0. Problems have previously been found
using OOoSVN under go-OOo.
- Subversion 1.3 or greater, latest stable version is recommended.
- svnadmin, svnlook, zip, unzip, sed 4.0
Installation:
This is BETA, use with caution.
The OOoSVN is available for download as an .oxt file. This is the
OpenOffice.org extension format. Use of the .oxt format eases installation a
lot:
1. Install the ooosvn-0.4.0.oxt package using OOo's package manager, Tools >
Extensions. This will install the BASIC
modules and will give you the SVN menu. With OOo 2.4 or later and OOoSVN 0.3.10
or later, the extension can be updated from within the Package Manager,
including by checking packages against the OOo Extensions repository.
2. If doing an upgrade it is STRONGLY RECOMMENDED that you run Tools > Add-Ons >
Install OOoSVN scripts to upgrade the scripts. If this is a fresh install, use
SVN > Place document under version control for the first time and your home
repository, working directory and shell scripts will be created for you by the
first run wizard.
Use:
Installing the .oxt package gets you an SVN menu in OOo. From this menu you can
access all of the functionality of OOoSVN.
Some understanding of the basic concepts of SVN are advised before using this
software.
If you want to automate use of OOoSVN, assign the macros OnSavedSVN and
OnSavedAsSVN to the Saved and Saved As events (note past participle) in Tools >
Customise > Events. This is not done automatically as most users will still
only want to try this out and
I'm not sure the OOo extensions format allows for macros to be assigned to
events on installation.
Todo:
Yeah, proper documentation.
Loads of other things.
OOoSVN is now on Sourceforge:
http://sourceforge.net/projects/ooosvn/
Please report bugs and submit feature requests to the bug/feature trackers
available there. Also do check for updated documentation and new releases. If
you are interested in contributing, let me know.
This is still **very much under development**.
Thanks:
Yuval Aviel, Richard Bos, everyone who has reported bugs and tested
=======================================
0.4.0 :: 2010-02-25
=======================================
### New features ###
Every document is now assigned a 128-bit DocumentUUID to uniquely identify it.
This has meant a major rewrite of how OOoSVN structures files with documents
now being logged under their UUID rather than file name. This means there are
no file name limitations anymore. It also means that if you rename or move a
file on your file system, it's still the same document and the history exists in
SVN. You can use spaces and you're not limited to only using a filename once.
I have tried to keep compatibility with older documents although they can also
be reimported to get them working fully with the new structure. This will in
time allow many new features.
If a document is reimported, the old Document UUID is assigned to the new
document as a Parent UUID. This means that there is now a concept of child
documents for traceability. Take a look in File > Properties to see the new
values in the meta.xml file but don't alter them as then they fall out of
control.
The functionality of the Recovery module has if anything got worse. This is
dictated by the new docuUUID tracking as the name of the file is no longer
known.
1654527 - Files with same names can be distinguised.
1759995 - There is now much better feedback through the Last Operation Log
function. The output has been better structured with better narration so that
it is much easier to follow the process.
1669064 - Command line usability. The shell scripts all had a major rewrite (if
upgrading run Tools > Addons > Install OOoSVN scripts or they won't work, new
installs do this automatically on the first run) and a number of useless
parameters were removed. Some simple documentation for of the command line
syntax was given which makes command line use on ODF files a reality in case you
don't want to use OOo or have another program that you'd like to integrate with.
Moved to .oxt file extension instead of .zip. There had been a good reason for
using .zip for a long time in that pre-2.0.4 OOo does not recognise .oxt. As
Those versions are now old enough to not be supported, switched to .oxt. No
difference in function of install.
Overcame the 'Cancel all changes?' dialogue on document reload in OOo 3.x.
Switched licence to GPL3.
### Bug Fixes ###
1846241 - Files can now have spaces in their names. I never use spaces myself
so this had never been a problem for me.
Fixed a problem where repeating comparing versions of a document would fail.
The temporary file was not being deleted in between.
Overcame various issues where the repository UUID of the document would not be
correctly written or overwritten.
=======================================
0.3.11 :: 2009-01-30
=======================================
### Bug fixes ###
2548888 - File recovery module was saving files to wrong path due to a missing
slash.
2548910 - If no version list is generated by recovery module, recovery would
still try to continue. An error is now given and the process is ended.
2548913 - If no version list is generated by revert module, revert would still
try to continue. An error is now given and the process is ended.
=======================================
0.3.10 :: 2009-01-12
=======================================
### New features ###
1805953 - Superceding versions will now be able to install as an upgrade via
OOo's package manager in recent versions of OOo. This will not work on top of
pre-0.3.10 versions. This will make upgrades much smoother and allow checking
for updates on the OOo extension repository.
User now has to agree to GPL during extension installation, not required on
upgrade.
Added 'Last Operation Log' feature to menu. This allows the user to see the
details of the last SVN operation.
Graphical Revert now aborts with a message on *.sx* files as these don't have
Thumbnails.
Many more comments and a few bits of code changed round.
### Bug Fixes ###
Files with disallowed characters in their names no longer can be overwritten
with a bloated ZIP file of everything in the repo that takes ages to build if
import is attempted. Instead a check for correct checkout will error at this
stage and the process will stop.
SVN Menu order fixed to how it was supposed to be.
=======================================
0.3.9 :: 2009-01-06
=======================================
### New features ###
2488967 - Added FirstRunCheck to OnSavedSVN and OnSavedAsSVN meaning that if
macros have already been assigned to these events, the wizard will run on the
first run.
Updated shell scripts to give PWD output after any cd. Useful for debugging.
If installing on top of an earlier version please run Tools > Add-Ons >
Install OOoSVN scripts. If this is a fresh install, these will be setup on the
first run.
Output from most shell operations now goes to operation.log. If you have any
trouble, have a look through this to see what the shell scripts are doing.
Replaced some simple error messages with operation.log output. If reporting
issues in future, posting the contents of any error logs displayed will be a
great help.
Added file import tests to ImportSVN and OnSavedAsSVN so that files that do not
get correctly imported will not alert the user giving them the full
operation.log text to see where problems may, ie. problem characters in file
name.
### Bug Fixes ###
All SVN file tests now look for .svn/ to make sure that files that have not been
correctly imported do not get reported. This is most useful on files with
problem characters such as spaces in them.
=======================================
0.3.8 :: 2007-08-20
=======================================
### New features ###
Some experimental configuration scripts which are not connected to anything but
give some idea of what 0.4.0 might try to do. Harmless, but don't run them
unless you like error messages.
### Bug Fixes ###
1777843 - In 0.3.7 the installation script errors out when trying to remove a
previous version of a script if there is no script already. OOoSVN will now
test to see if these files exist or not.
=======================================
0.3.7 :: 2007-08-04
=======================================
### New Features ###
Storing of repository info in a config file is now working but still
experimental. It is currently only used for checking out the userguide from
SF.net. The idea is that for 0.4 this will be standard so that multiple
repositories can be handled.
Changed how the Repo-UUID is written to meta.xml. It's now in a hidden field
which keeps it out of File > Properties which was a repudiation/security risk.
If a file is imported twice (ie. after a SaveAs) then the Repo-UUID is
overwritten rather than adding a second one. It can be successfully read from a
file which will also be fully utilised in 0.4.
Help > About OOoSVN now has a button to checkout the userguide.
1759995 - More feedback needed about actions in progress, some work done on
this. Every process now has a status bar message to give the user some idea
what is going on. Some messages will only flash up for an instant, others may
stay for a few seconds. Watch the status bar.
### Bug fixes ###
OOoSVN will now delete any previous versions of shell scripts on shell script
installation, this will prevent breakages from overwriting existing scripts
without clearing the code previously in those files.
=======================================
0.3.6 :: 2007-07-24
=======================================
### New Features ###
1654579 - Added a check for SVN during first run wizard. It currently requires
1.3 (the
oldest supported by Tigris) to pass though if anyone has any problem with this
limit and a better suggestion for what the requirement should be, please get in
touch.
Added a configuration complete dialogue to the end of the installation wizard.
### Bug fixes ###
1758195 - Fixed failing to generate thumbnail images. This was due to a broken
shell
command that didn't get spotted earlier as not many people use it anyway.
Thanks to monnier for spotting this error.
=======================================
0.3.5 :: 2007-04-10
=======================================
### New Features ###
Added document existence check to file loading on recoverSVN and GetUserguide
Added working dir and scripts installation tool. This will create the home
repository also. It is recommended that users upgrading run Tools > Addons >
Install OOoSVN scripts to check their scripts are up to date.
No more two layered installation. The outer ZIP file is the extension so just
install the ZIP file in OOo through the extension manager and go.
FirstRunCheck Function which checks for existence of workingdir, if not found it
creates the working directory, home repository and installs the scripts there.
This should make installation straight forward.
### Bug Fixes ###
1690311 - Fixed broken ImportSVN module. This was down to some problems with
the Filename Function, this won't happen again. Thanks to earlycj5 for
reporting this.
=======================================
0.3.4 :: 2007-03-30
=======================================
### New Features ###
1655501 - Started adding icons to SVN menu. More, including large size and high
contrast, will happen over time.
1656450 - Added Userguide download tool: Help > Get latest OOoSVN Userguide.
This checks out the latest version of the document from Sourceforge and builds
it for the user.
Working directory creation function
A whole load of experimental stuff that's not hooked up properly yet but may be
useful for anyone interested in where this project is going.
### Bug Fixes ###
Changed #! /bin/bash top #!/bin/bash which is more correct, even though both
work. Thanks to Richard Bos for his suggestion.
=======================================
0.3.3 :: 2007-03-06
=======================================
### New Features ###
CreateSVN command added. Not currently set up by default as it's better from a
testing POV to do this on the command line. Fully utilising this function is
dependent upon implementing multi-repository handling. Thanks to Yuval Aviel
for his work on this.
Some more modularisation work done. Thanks to Yuval Aviel for his input.
### Bug Fixes ###
Changed a number of shell script executions so that OOo waits for the script to
finish before executing. This fixes many problems and makes the info and log
display bugs (1654245, 1654246) fixed properly this time. It also means that
the documented is rebuilt and reloaded on import so the Repo-UUID field is held
(1658949). Thanks to Yuval Aviel for his help on this.
Fixed a minor bug in the syntax of a few cut commands. Not harmful, just not
correct. Thanks to Richard Bos for his suggestion.
1654590 - Document reloads now happen immediately. Much quicker and safer.
This is related to the big load of bug fixes too.
=======================================
0.3.2 :: 2007-02-13
=======================================
### New features ###
Switched back to using .zip extension from .oxt. The packages are exactly the
same but .zip will install on OOo
1654374 - Metadata can now be written to meta.xml on import. Currently all it
does is replace the Info 1 field with the Repository-UUID field. This is a
requirement for multiple repositories as it allows a repository to be uniquely
referenced.
1655618 - Repository referred to by UUID, see above.
1654600 - Online help added to Help menu. Will in the long run be replaced as
OOo's extension framework will in future allow 3rd party help content.
### Bug Fixes ###
1654245 - Further improvement of the Info display code. Almost bomb proof now
and really should never display the wrong info version or blank.
1654246 - Log should now be correct all the time now, same as above.
=======================================
0.3.1 :: 2007-02-07
=======================================
### New features ###
1655501 - Comments no longer hardcoded as 'Revision' in commit.sh. Now the
comment is taken as $5 and is different for different operations.
'Incremental-save' and 'Manual-commit' are currently being used for OnSavedSVN
and CommitSVN.
Some more work on OnPrintSVN. It will save and commit a file with 'Printed'
comment although as save will commit anyway, this does nothing useful yet.
### Bug Fixes ###
1654245 - Info screen should now always be up to date and correct.
1654251 - Some more references to repo changed to ConvertToURL(WorkingDir) in
OOo Basic. These are requirements for separating repository from working
directory.
1655454 - Commit no longer writes ~/commit.txt. This was some obsolete
debugging thing that was no use anyway.
Partial fix for log not being up to date. Should very rarely be incorrect now.