Looking to get the Mifos source code? You've come to the right place. Instructions on getting, and contributing to, the Mifos source code through our Git repository can be found below.
Effective use of version control is critical to effective team collaboration on Mifos. Our version control system is how we communicate code changes with one another.
...
Browse Source
Download a snapshot
- Download the latest code without version control
- zip Zip archives (not release)
If you want to do download source code of some previous release then you should browse the repository and use "snapshot" link to download that code as a tar.gz archive.
Developer Setup
Follow Please follow this section completely before cloning any Mifos repositories!.
1. Install Git
...
The following sections outline how to install git on Windows, Ubuntu and the Mac OS:
Installing Git on Windows:
- Install msysGit (look for a file named similarly to
Git-1.7.0.2-preview20100309.exe
) - select default components
- in "Adjusting your PATH environment" select "Run Git from the Windows Command Prompt"
- choose the default for the "Configuring the line ending conversions": "Checkout Windows-style, commit Unix-style line endings"
...
Installing Git on Ubuntu:
No Format |
---|
sudo apt-get install git-core |
You may also find Step 4 of the Ubuntu install guide to be a handy reference.
...
Installing Git on Mac OS:
To install using macports, follow instructions here.
Alternately, an installer (.dmg) can be found at git's web site. (This .dmg file has been found to work just fine on Snow Leopard as well, despite being labeled as for Leopard.)
...
2. Configure Git line endings
Tell Git to handle line endings for you so folks on different platforms can live in harmony.
Configure line endings on Windows:
Do this on the Git Bash MINGW msysGit command line:
No Format |
---|
git config --global core.autocrlf true |
Configure line endings on Linux
...
or Mac
...
Do thisOS:
No Format |
---|
git config --global core.autocrlf input |
More
...
information on line endings is available at the following URLs:
- http://help.github.com/dealing-with-lineendings/
- http://article.gmane.org/gmane.comp.version-control.git/146485
3. Configure Git Author Info
To make all commits clear/legible/accessible, please configure git to use your full, real name and email.
This means...means user.name
must be your real/legal first and last name. Do not abbreviate either. If you have more than two names, pick the two you are most commonly known by.
...
No Format |
---|
git config --global user.email joe@example.com |
Day to day usage
For a quick summary, see the Git homepage.
Clone
...
4. Clone the codebase (read-only)
This is basically similar to a checkout operation - you'll get a read-only personal copy of the source code, which you can examine and modify .
For read-only access:
No Format |
---|
git clone git://github.com/mifos/REPOSITORY_NAME.git
|
Where REPOSITORY_NAME is "head", or as you like.
In the following example, we clone the "head" repository, but you can clone any of the repositories listed at https://github.com/mifoshttp://mifos.git.sf.net/ (also see below for tables explaining purposes of the various repositories). To clone the head repository:
No Format |
---|
git clone git://github.com/mifos/head.git |
Create an account on github. Read-write access uses a url, and permission granted by a current Mifos maintainer.
No Format |
---|
git@github.com:mifos/head.git
|
...
Active
...
repositories:
repository Repository | purpose Purpose |
---|---|
bi | |
cloud | Code related to the Mifos cloud. |
documents | Mifos documentation and various files that don't belong in head. |
head | Most work on the Mifos MIS Java Web application happens here. Many development branches exist. Mifos release maintenance branches are also found in head, one for each release since 1.6.x. |
maven | Maven-related code used for building code in the head repository. |
plugins | Mifos plugins. Projects in this repository build plugins to assist with imports of various kinds of transactions into Mifos. |
www | Code for mifos.com and mifos.org. |
Archived/deprecated/old/inactive repositories:
repository | purpose |
---|---|
cheetah | A spike on a complete Mifos rewrite. Mostly incorporated into head. |
htmlcss | Static version of Mifos UI used during a Summer of Code 2010 CSS redesign project. |
marketplace | An old spike. |
1.4.x | "master" in this repository is an old (1.4.x) release maintenance branch. See head for code for 1.6.x and later releases. |
1.5.x | "master" in this repository is an old (1.5.x) release maintenance branch. See head for code for 1.6.x and later releases. |
Key-based auth
...
5. Fork the repository
To obtain a personal copy of the source code, which you can immediately commit to, head to Github (http://helpwww.github.com/) and create an account there. You can fork the main Mifos repository by:
No Format |
---|
git clone git@github.com:username/head.git
|
6. Commit to
...
a local repository
Add files to the git "index" so they will be committed with "git add". Optionally, instead of running "git add", include -a when running "git commit" to commit all local modifications except new files. Then, commit:
...