view get-involved.md @ 68:8224b565e6fd kai

Moved contribute.md to get-involved.md as this one is really used elsewhere.
author Kai T. Ohlhus <k.ohlhus@gmail.com>
date Thu, 13 Oct 2016 17:42:18 +0200
parents
children 05b2f0d66aa8
line wrap: on
line source

---
layout: default
title: Contribute
menu: true
---

We always need more help improving Octave and there are many ways
you can contribute.  You can help by fixing bugs, developing new
features, answering questions on the mailing list or IRC channel,
helping to improve the web pages.

If you are wondering what to work on, we have a standard answer:
what would you like to work on?  We try not to tell contributors
what to work on as most people do their best work when they are
within their own field of interest.  So, we would love your help,
but would also love for you to work on what you love.

If you need some inspiration, we do maintain a
<a href="http://www.octave.org/wiki/Projects">list of possible projects</a>
on the Wiki.

If you have an idea on what to contribute, then join the
maintainers mailing list and discuss your ideas there.  That way
others can provide input early on, which makes your contribution
more likely to get accepted.


## Contacting developers

If you want to participate in Octave development, you should join
the <a href="https://lists.gnu.org/mailman/listinfo/octave-maintainers">
<code>maintainers@octave.org</code></a> mailing list.  <b>Please
use this list only if you are participating in Octave's
development.</b>  If you are looking for help in using Octave,
please use the <a href="https://lists.gnu.org/mailman/listinfo/help-octave"><code>help@octave.org</code></a>
list instead, or check out other <a href="support.html">support
options</a>.

For sometimes faster communication, you can also chat in IRC
in <code>#octave</code> in Freenode. Note, however, that the primary
medium for development talk is the mailing list.


## Using the Development Sources

The latest development sources of Octave are also available via
<a href="http://www.selenic.com/mercurial/wiki">Mercurial</a> (hg)
archive.

The primary archive address
is <a href="http://www.octave.org/hg/octave">http://www.octave.org/hg/octave</a>,
which currently redirects
to <a href="http://hg.savannah.gnu.org/hgweb/octave">http://hg.savannah.gnu.org/hgweb/octave</a>.

If you decide to use the development sources from the Mercurial
archive, please read the
file <a href="http://www.octave.org/hg/octave/file/tip/etc/HACKING"><code>etc/HACKING</code></a>
that is available with the source files.

Assuming you have Mercurial and git installed on your machine you
may obtain the latest development version of Octave sources with
the following command:

{% highlight text %}
hg clone http://www.octave.org/hg/octave
{% endhighlight %}

This will clone <em>two</em> repositories, one of which is
subrepository of the main Octave repository. Once you have these,
you can resync with the archive by doing

{% highlight text %}
hg -v pull
hg -v update
{% endhighlight %}

The `-v` option is not required but provides extra information
about what was pulled and updated.  The Octave manual has more
information about <a href="doc/interpreter/Contributing-Guidelines.html#Contributing-Guidelines">contributing
to Octave's development</a>.


## Octave Forge

The community-developed [Octave-Forge][forge] packages expand Octave's core
functionality by providing field specific features via Octave's package system.
For example, image and signal processing, fuzzy logic, instrument control,
and statistics packages are examples of individual Octave-Forge packages.

[forge]: http://octave.sourceforge.net/
[forge-packages]: http://octave.sourceforge.net/packages.php