How to write a patch: Unterschied zwischen den Versionen

Aus FHEMWiki
K (Kategorie Guideline gelöscht)
K (Hinweis kein TABs benutzen in denglisch eingefügt)
Zeile 40: Zeile 40:
== Create A Patch File ==
== Create A Patch File ==


SVN helps you to create a proper patch file. Name it properly.
SVN helps you to create a proper patch file. Name it properly. Please do not use tabs in the patch-file. Use blanks instead.


  svn diff > ~/fix_ugly_bug.patch
  svn diff > ~/fix_ugly_bug.patch

Version vom 29. September 2014, 17:39 Uhr

This article covers the process to write a patch and submit it.

Checkout Sourcecode

First checkout the source code from the svn repository.

svn checkout http://svn.code.sf.net/p/fhem/code/trunk fhem-code

Find The Module Maintainer

View the file fhem/MAINTAINER.txt. There you find out who is maintaining a module and where you should submit the patch.

Make Changes

Edit the relevant file. Implement only one change. If you log something consider the right log level. See FHEM Command Beispiele

Test Changes

Deploy the change to your fhem installation and test whether it fixes the problem or whether the new feature works as expected.

Document Your Changes

At the end of the file you find the documentation starting with a =pod line. Add documentation as html fragements to it. More infos can be found at Guidelines_zur_Dokumentation

Check Documentation

Run the script commandref_join.pl and look at the output. If it complains fix the documentation.

cd fhem
contrib/commandref_join.pl

Check Whether The Sourcecode is up to date

Before creating the patch check whether your sourcecode is up to date.

svn update

Create A Patch File

SVN helps you to create a proper patch file. Name it properly. Please do not use tabs in the patch-file. Use blanks instead.

svn diff > ~/fix_ugly_bug.patch

Submit the Patch

Visit the forum as stated in the file fhem/MAINTAINER.txt. Start a new thread with the subject starting with a [patch] and give it a meaningful title. Write a short description what the patch does and attach the patch file.