Distributed Git Repository
We use Git as distributed version control system for our source code repositories.
Git makes extending and contributing to the projects much easier than with Subversion and CVS we used earlier - no more
any need to 'join the team' or to 'ask for write access', just fork and code. Whenever you have something ready
simply ping us so we can pull from your fork and integrate it back into mainline.
Since we moved to Git we've also split the source code into seperate repositories for every project.
We push all of them to github, some also to gitorious.
Other than github, gitorious also provides access through the http protocol (http://) which might be your
only chance if you're behind a poorly configured firewall. However, keep in mind that the native git protocol (git://)
which both providers support is both smarter and faster and thus recommended. Both github and gitorious also have
nice web sites which allow you to browse the history and the complete sources and even to download tarballs or zips
of all the revisions. Of course, our release downloads contain the source code as well.
- Math.NET Iridium (Numerics Foundation)
Iridium at github, Clone URL: git://github.com/cdrnet/mathnet-iridium.git
Iridium at gitorious, Clone URL: http://git.gitorious.org/mathnet-iridium/mainline.git
- Math.NET Palladium (Linq Expression Computer Algebra)
Palladium at github, Clone URL: git://github.com/cdrnet/mathnet-palladium.git
Palladium at gitorious, Clone URL: http://git.gitorious.org/mathnet-palladium/mainline.git
- Math.NET Neodym (Signal Processing)
Neodym at github, Clone URL: git://github.com/cdrnet/mathnet-neodym.git
- Math.NET Yttrium (Experimental Symbolic Systems)
Yttrium at github, Clone URL: git://github.com/cdrnet/mathnet-yttrium.git
Subversion Repository Mirrors
For those of you who can't or for some reason don't want to use Git yet, we provide
Subversion (SVN) mirrors which reflect the master branch of the Git repositories.
However, note that all these mirrors are read-only and their history linearized
and without the correct authors set.
As before we host the primary repository here on this server with the native
subversion protocol, plus a mirror at google code
for backup and for those behind a restrictive firewall (http support).
- Math.NET Iridium (Numerics Foundation)
Subversion Repository URL: svn://svn.opensourcedotnet.info/mathnet-iridium/trunk
Google Code Mirror URL: http://mathnet-iridium-mirror.googlecode.com/svn/trunk
- Math.NET Palladium (Linq Expression Computer Algebra)
Subversion Repository URL: svn://svn.opensourcedotnet.info/mathnet-palladium/trunk
Google Code Mirror URL: http://mathnet-palladium-mirror.googlecode.com/svn/trunk
- Math.NET Neodym (Signal Processing)
Subversion Repository URL: svn://svn.opensourcedotnet.info/mathnet-neodym/trunk
Google Code Mirror URL: http://mathnet-neodym-mirror.googlecode.com/svn/trunk
- Math.NET Yttrium (Experimental Symbolic Systems)
Subversion Repository URL: svn://svn.opensourcedotnet.info/mathnet-yttrium/trunk
Google Code Mirror URL: http://mathnet-yttrium-mirror.googlecode.com/svn/trunk
How to get a local working copy
How to contribute to Math.NET
Thanks to Git there's no longer any need to 'join the team' or to 'ask for write access'.
Probably the easiest way for both parties is to create an account on
github and fork the Math.NET project directly from the
github website ("fork" button).
This way the forks remain connected and you can ping us simply by clicking the "pull request"
button - if we haven't noticed and integrated it already anyway.
Of course you can also send us a patch file, generated by
git format-patch
More resources on Git and how to use it
There are numerous resources on Git. The most complete is likely the
git community book which can be read online
or downloaded as PDF. Some other resources and tutorials include
Git Quick Reference,
Git Magic,
Git Guide, and
Git recipes. And of course,
"git help" is useful as well.