1 [[!meta title="Git repositories"]]
5 <p>The Amnesic Incognito Live System and this documentation wiki are
6 developed in a bunch of Git repositories.</p>
8 <p><strong>Related pages</strong></p>
11 <li>[[contribute/merge_policy]]</li>
14 <p><strong>Table of contents</strong></p>
23 This repository contains the Tails source code and the wiki source.
25 Anyone can check it out like this:
27 git clone git://git.immerda.ch/amnesia.git
29 Developers with write access to the repositories should instead:
31 git clone 'ssh://boum_org_amnesia@webmasters.boum.org/~/wiki.git'
33 We have a Gitweb available for [the main
34 repository](http://git.immerda.ch/?p=amnesia.git).
39 Tails development uses several branches modeled a bit like the
40 Debian development process. Here they are.
44 The `master` branch is used by the online wiki.
46 **FIXME**: document what should go in there, when other branches are
51 The `stable` branch is intended to contain:
53 - the state of the code tagged for the last stable release
54 - fixes for security or important bugs.
56 Its purpose is to prepare minor releases.
60 The `testing` branch is used to prepare an imminent release: at some
61 point of the development process, the `devel` branch code is merged
62 into `testing`, freezed, and endures careful testing and bug-fixing
63 until this branch is considered good enough to become a stable
64 release. The `testing` branch is then merged into the `stable` and
65 `master` ones, images built and shipped and we go back to code shiny
66 new stuff in the `devel` branch.
68 Please note that the `testing` branch generally has not been granted
69 the same testing and attention as code that has made it into a
70 stable release: please use it for testing purposes but do not rely
71 on it for anything. No guarantee, blablabla.
75 Most of the development work that is done in Tails, is done in the
76 `devel` branch. This branch will never get released; instead, code
77 from it will be merged into testing and then into a real release.
79 Please note that the `devel` branch can be broken, have awful security
80 problems and so on. No guarantee, blablabla.
82 The `master` branch is merged into `devel` from time to time.
86 Some of us like to use topic branches called `bugfix/*` and
87 `feature/*`, respectively aimed at fixing a single bug and
88 implementing a single new feature. Once ready, a topic branch is
89 merged (with `--no-ff`) into the appropriate branch (generally
90 `devel`). Until it has been merged, a topic branch's history may be
91 rewritten, e.g. it may be rebased on top of `devel`.
96 Anyone can check it out like this:
98 git clone git://git.immerda.ch/tails_live-boot.git
100 Developers with write access to the repositories should instead:
102 git clone 'ssh://git@git.immerda.ch/tails_live-boot.git'
104 We have a Gitweb available for [our custom
105 live-boot](http://git.immerda.ch/?p=tails_live-boot.git).
110 Anyone can check it out like this:
112 git clone git://git.immerda.ch/tails_live-config.git
114 Developers with write access to the repositories should instead:
116 git clone 'ssh://git@git.immerda.ch/tails_live-config.git'
118 We have a Gitweb available or [our custom
119 live-config](http://git.immerda.ch/?p=tails_live-config.git).
124 If you want to commit patches that may be published later, you might
125 want to anonymize them a bit; to do so, run the following commands
126 in every of your local clones' directories:
128 git config user.name 'Tails developers'
129 git config user.email amnesia@boum.org
131 If you intend to prepare Tails releases, you'll also need to make
132 the development team signing key the default one for Git tags:
134 git config user.signingkey BE2CD9C1