Join us on Facebook!
Our development version is hosted and mantained on GitHub. The official page can be found at github.com/monocasual/giada and the repository with the master branch at
https://github.com/monocasual/giada.git
git://github.com/monocasual/giada.git
Please refer to the GitHub documentation on how to fork, pull, push and so on. If you're new to GitHub, we would suggest a very nice tutorial for beginners.
We put the most experimental code in a feature branch. When the new feature is completed, we merge/rebase the feature branch into master and we drop the feature branch. However the master branch does not necessarily point to the latest release. For that, we use tags, whenever a new release is ready. For example, if you do git tag --list you will see the full tag list:
v0.10.0 v0.10.1 v0.10.2 v0.11.0 v0.11.1 v0.11.2 ...
Do you want the release v0.11.2? Just git checkout v0.11.2 and you're done.
Our development style strives to be test-driven as best it can. There is a daily growing test suite under src/tests that you can compile and run as described in chapter Compiling from source. A subset of those tests are crafted for Travis CI and they rely upon travis.yml script, which takes care of some "dependencies" (wave files, midimaps, VST plugins and so on). The script basically downloads the needed files, for example:
# Download midimaps package for testing purposes - wget https://github.com/monocasual/giada-midimaps/archive/master.zip -O giada-midimaps-master.zip - unzip giada-midimaps-master.zip - mkdir -p $HOME/.giada/midimaps - cp giada-midimaps-master/midimaps/* $HOME/.giada/midimaps
You can however run the tests locally thanks to our smart configure script: it's instructed to guess whether those dependencies are present. If not, all test cases that require external files will adjust themselves accordingly.
The source in the repository follows the same rules of the .tar package you download from this website. In the chapter Compiling from source you will find all the informations needed.
In addition to that, you may need to run the included autogen.sh script (available only in the repository) in order to prepare the build environment:
./autogen.sh configure [...] make
The first time you clone the git repository you have to initialize it, because Giada contains a couple of external dependencies configured as Git submodules. Go into the project folder, root level and do:
git submodule init git submodule update
Instead of cluttering up your environment with dependencies, scripts and compilers you may try our Docker image, designed to ease the compilation and testing processes. Take a look at the GitHub repository to know more.