add SubmittingPatches document to docs/
[openwrt/svn-archive/archive.git] / docs / submitting-patches.tex
diff --git a/docs/submitting-patches.tex b/docs/submitting-patches.tex
new file mode 100644 (file)
index 0000000..c16aaa9
--- /dev/null
@@ -0,0 +1,53 @@
+\subsection{How to contribute}
+OpenWrt is constantly being improved.  We'd like as many people to contribute
+to this as we can get. If you find a change useful, by all means try to get
+it incorporated into the project. This should improve OpenWrt and it should
+help carry your changes forward into future versions
+
+This section tries to lay out a procedure to enable people to submit patches
+in a way that is most effective for all concerned.
+
+It is important to do all these steps repeatedly:
+
+\begin{itemize}
+       \item \textit{listen} to what other people think.
+       \item \textit{talk} explaining what problem you are addressing and your
+               proposed solution.
+       \item \textit{do} write useful patches including documentation.
+    \item \textit{test. test. test.}
+\end{itemize}
+
+\subsection{Where to listen and talk}
+
+\begin{itemize}
+       \item google to find things related to your problem
+       \item Mailing lists: \href{http://lists.openwrt.org/}{http://lists.openwrt.org/}
+       \item Wiki: check the wiki: \href{http://wiki.openwrt.org/OpenWrtDocs}{http://wiki.openwrt.org/OpenWrtDocs}
+       \item Forum: \href{http://forum.openwrt.org/}{http://forum.openwrt.org/}
+       \item IRC: \texttt{irc.freenode.net}, channels \texttt{\#openwrt} and 
+               \texttt{\#openwrt-devel}
+       \item TRAC: \href{https://dev.openwrt.org/}{https://dev.openwrt.org/} the issue/bug/change tracking system
+\end{itemize}
+
+It is often best to document what you are doing before you do it.  The process
+of documentation often exposes possible improvements.  Keep your documentation
+up to date.
+
+\subsection{Patch Submission Process}
+\begin{enumerate}
+       \item Use git or svn to create a patch. Creating patches manually with 
+               \textit{diff -urN} also works, but is usually unnecessary.
+       \item Send a mail to openwrt-devel@lists.openwrt.org with the following contents:
+       \begin{enumerate}
+               \item \texttt{[PATCH] <short description>} in the Subject, followed by:
+               \item (optional) a longer description of your patch in the message body
+        \item \texttt{Signed-off-by: Your name <your@email.address>}
+               \item Your actual patch, inline, not word wrapped or whitespace mangled. 
+       \end{enumerate}
+       \item Please read \href{http://kerneltrap.org/Linux/Email\_Clients\_and\_Patches}{http://kerneltrap.org/Linux/Email\_Clients\_and\_Patches}
+               to find out how to make sure your email client doesn't destroy your patch.
+       \item Please use your real name and email address in the \texttt{Signed-off-by}
+               line, following the same guidelines as in the \href{http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=Documentation/SubmittingPatches;h=681e2b36195c98ea5271b76383b3a574b190b04f;hb=HEAD}{Linux Kernel patch submission guidelines}
+       \item Example of a properly formatted patch submission: \\
+       \href{http://lists.openwrt.org/pipermail/openwrt-devel/2007-November/001334.html}{http://lists.openwrt.org/pipermail/openwrt-devel/2007-November/001334.html}
+\end{enumerate}