Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
diff -u Main.java.orig Main.java >> patchfile.txt

or

Code Block
svngit diff Main.java >>--no-prefix > patchfile.txt

Submitting patches

...

Remember to create and attach the patch in two steps, as JIRA does not support granting ASF license to the patch in the create ticket wizard. So after creating the ticket, then attach the patch and remember to tick off the grant ASF license, otherwise we can not commit the patch. We prefer patches has unit tests as well and that these unit tests have proper assertions as well, so remember to replace your system.out or logging with an assertion instead!

Working with Git

While several committer are working with Git, it is not the primary version control system at Apache Software Foundation. This is because the ASF has to ensure that each commit into the codebase is correct licensed. With the current VCS - Subversion - only committers with a signed CLA have write access.

But there are There are several ways how Git users could improve Camel with their prefered tool:

  • git-svn
  • Apache Git Mirror
  • Pull request at Github

The minor "problem" is creating the local repository connected to the official repository. Next step is modifying the codebase. The major "problem" then is getting the modifications back to the official ASF Git repository.
Depending on the chosen way these steps differ which is short described here.

git-svn

With Git you cannot fork another Git repository - you also could "fork" a subversion repository.

Code Block
git svn clone https://svn.apache.org/repos/asf/camel/trunk <TargetDirectory>

If you have write access to the codebase you could fork from the https-adress and just "push" your changes back:

Code Block
git svn dcommit -m "message"

Without that privilege you could follow the recommended workflow: working on a feature branch, create a patch and attach it to Jira. Attaching to Jira has the benefit for the community that you are enforced to grant explicitly the license to the ASF.

...

Apache Git Mirror

Forking the Git repo from here is much smoother, because you are forking a "real" Git repo.

...