Switch branches/tags
Nothing to show
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
78 lines (57 sloc) 3.16 KB

Developing locally

Clone the repo and develop on the "develop" branch for new features and version branches (eg. v3.3) for bug fixes.

Contributing to the project

All features and bugfixes must be fully tested and must have a reference to an issue in GitHub, there are absolutely no exceptions.

It's highly recommended that you write/run unit tests during development as it can help you pick up on issues early on. See the Unit Testing section below.

Cloning repo

Go to for each repo in the top right theres a button that says Fork. Click there to clone each repo. That will copy the repos to your github user, ex:

Clone your project in local and use devel branch

git clone
cd koseven
git checkout devel

This will clone the koseven project

Ready ;)

How to commit

If you have made modifications to the code.

git status # to see what's going on
git commit -a -m 'message here, this will commit the changes on the tracked files'
git push origin devel # will "upload" the changes to your repo


git add . # will add all the files, even new ones
git add -u # will add all the tracked files even the deleted ones
git commit -a -m 'working closed etc  #725' # this will commit and mention an issue in the repo

Pull Requests

Now you have new code at your fork ex To move them to the original repo you need to go to, and click on Pull Request (next to compare). This will create a pull request to the original code and the responsible will decide to merge it or not.


  • Try to submit pull requests against devel branch for easier merging
  • Try not to pollute your pull request with unintended changes--keep them simple and small
  • Try to share which browsers your code has been tested in before submitting a pull request

Keep sync with original repo

First time, add a remote with the upstream

git remote add upstream

Everytime you want to sync just

git fetch upstream
git merge upstream/devel

Remember to be at you devel branch!

Bug fixing

Make a PR with the fix, explain as in detail as possiblle.

Tagging releases

Tag names should be prefixed with a v, this helps to separate tag references from branch references in Git.

For example, if you were creating a tag for the 3.1.0 release the tag name would be v3.1.0

Unit Testing

Koseven currently uses PHPUnit for unit testing. This is installed with composer.

How to run the tests

  • Install Composer
  • Run php composer.phar install from the root of this repository
  • Finally, run vendor/bin/phpunit --bootstrap=modules/unittest/bootstrap.php modules/unittest/tests.php

This will run the unit tests for core and all the modules and tell you if anything failed. If you haven't changed anything and you get failures, please create a new issue on and paste the output (including the error) in the issue. Please note that a few tests only pass on linux systems.