Usage with Git and Subversion

Source control system is an absolute necessity in modern software development. Depending on the type of project you might want to use either Git or Subversion. Agile Toolkit uses Git due to its open-source nature. If you are willing to add changes to Agile Toolkit, you can fork it on

Git Introduction

If you want to use the most up-to-date copy of Agile Toolkit, then you will need to use "git". Git is a command-line interface utility, which is executed as "git command arguments ..'. A good starting guide on Git is: is the GitHub page for Agile Toolkit. You will find a "branch" switch as well as a selection of tags. There are two major branches: "devel" and "master". All the stable releases are based on the "master" branch, while beta releases are based on the "devel" branch. Sometimes new feature branches will appear, as experimental features are being developed.

The documentation on this site applies to the 4.1 branch (or later, where specified). As the code in the project is improved, some functions might be renamed. Backwards compatibility is maintained throughout one major upgrade release, for instance: migrating 4.0 code to 4.1 probably works well and requires little change, but migrating from 4.0 to 4.2 might require you to change several calls to functions which have been made obsolete. Some older classes may be removed and placed under the "atk4-obsolete" repository. If your legacy code still relies on them, copy them into your local lib directory or, use the addLocation() method.

Essential Repositories

  • (git:// - Agile Toolkit
  • (git:// - Agile Toolkit Addons
  • (git:// - Sources for THIS website
  • (git:// - Sources for, which contain examples for code sharing
  • (git:// - Contents of the default downloadable package, which is linked from
  • (git:// - A real budget-tracking project developed in Agile Toolkit and released under open-source license
  • Share Your Project

    If you are developing a non-commercial project with Agile Toolkit under the AGPL license, we invite you to share this project on GitHub.

    • Open, login and create a new repository. Follow instructions.
    • Remove atk4 / atk4-addons if you have downloaded them through ZIP
    • Checkout atk4 and atk4-addons directly through Git
      git submodule add
      git submodule add
      git submodule update
    • If you want the development branch:
      cd atk4
      git checkout devel
      cd ..

      cd atk4-addons
      git checkout devel
      cd ..
    • use "git status" and create your own .gitignore file. Add "config.php", ".htaccess" and other files which you do not wish to share to your .gitignore.
      Why is placing config.php and .htaccess into Git/SVN bad?
    • "git add ." to add all files to your new repository
    • "git push" to send your files to
    • Let us know about your project