Patchtool: Difference between revisions
Jump to navigation
Jump to search
Joejoe2010 (talk | contribs) No edit summary |
Joejoe2010 (talk | contribs) No edit summary |
||
Line 3: | Line 3: | ||
* see in the OpenPetra.org bazaar repository: | * see in the OpenPetra.org bazaar repository: | ||
** [http:// | ** [http://bazaar.launchpad.net/~openpetracore/openpetraorg/trunkhosted/view/head:/csharp/ICT/Common/IO/PatchTools.cs managed bsdiff library] | ||
** [http:// | ** [http://bazaar.launchpad.net/~openpetracore/openpetraorg/trunkhosted/files/head:/csharp/ICT/PetraTools/PatchTool/ OpenPetra.org PatchTool] | ||
== description == | == description == | ||
* for creating a patch, we need a tar.gz file from the previous release and the current release | * for creating a patch, we need a tar.gz file from the previous release and the current release |
Revision as of 14:11, 17 March 2012
sources
- this tool uses the bsdiff algorithm from http://www.daemonology.net/bsdiff/
- see in the OpenPetra.org bazaar repository:
description
- for creating a patch, we need a tar.gz file from the previous release and the current release
- each release contains a version.txt file in the bin directory, to be able to determine the currently installed version
- individual files can be replaced in a production environment, as long as the original file is stored with the .orig extension
- for building the patch, we use the original bsdiff program which is written in C. It is available for Windows and Linux. It is much faster as a version we wrote in Managed Code, though that is probably due to lack of time and knowledge how to make the algorithm work fast in C# as well.
- for applying the patch, our managed code works quite well, so we don't require an additional binary on the production machines