Patchtool: Difference between revisions

From OpenPetra Wiki
Jump to navigation Jump to search
(Created page with '== sources == * this tool uses the bsdiff algorithm from http://www.daemonology.net/bsdiff/ * see in the OpenPetra.org git: ** [http://openpetraorg.git.sourceforge.net/git/gitwe…')
 
No edit summary
Line 3: Line 3:


* see in the OpenPetra.org git:
* see in the OpenPetra.org git:
** [http://openpetraorg.git.sourceforge.net/git/gitweb.cgi?p=openpetraorg/openpetraorg;a=blob;f=csharp/ICT/Common/IO/PatchTools.cs;hb=master managed bsdiff library]
** [http://bzr.openpetra.org:8088/loggerhead/trunk/annotate/head:/csharp/ICT/Common/IO/PatchTools.cs managed bsdiff library]
** [http://openpetraorg.git.sourceforge.net/git/gitweb.cgi?p=openpetraorg/openpetraorg;a=tree;f=csharp/ICT/PetraTools/PatchTool;hb=master OpenPetra.org PatchTool]
** [http://bzr.openpetra.org:8088/loggerhead/trunk/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 11:34, 18 June 2011

sources

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