pull archive keyring out of global trust path
[grml.org.git] / history / rss / hg-to-git.txt
1 Migration from Mercurial to Git
2
3 <p>Over the last few weeks the grml team evaluated the distributed version controll system
4 <strong>Git</strong>. Git is an open source, distributed version control system designed to handle
5 everything from small to very large projects with speed and efficiency. Read the <a
6     href="http://en.wikipedia.org/wiki/Git_(software)">wikipedia article on Git</a> to get an (not so
7 short) overview.</p>
8
9 <p>Grml used to work with the distributed version controll system <strong>Mercurial</strong> and
10 officially announced its use on October 18th, 2006. The way Mercurial worked was great for us and at
11 that time it definitely was the best solution for our needs. We provided detailed documentation for
12 our setup (see <a href="http://grml.org/mercurial/">grml.org/mercurial/</a>) and developed our own
13 utils for working with Mercurial and Debian packaging (<a
14     href="http://hg.grml.org/grml-mercurial-utils">grml-mercurial-utils</a>). Special thanks to the
15 Mercurial developers - we highly appreciate all your help!</p>
16
17 <p>But we had to re-evaluate the situation as time passed:</p>
18
19 <ul>
20     <li>in Debian Mercurial is not used for many packages (<a
21         href="http://hg.debian.org/">http://hg.debian.org</a>), while Git is used a lot (<a
22         href="http://git.debian.org/">git.debian.org</a>) and there's visible progress on the Git
23     front (for example <a href="http://packages.debian.org/sid/git-buildpackage">git-buildpackage</a>,
24     <a href="http://repo.or.cz/w/topgit.git">topgit</a> and <a
25         href="http://vcs-pkg.org/">vcs-pkg.org</a>)</li>
26     <li>situation of Git improved (like better documentation, tools for Debian packaging,...)</li>
27     <li>Git provides better branching, rebasing which is great especially
28     when you want to put essential software under your own control without having to fork it from
29     upstream</li>
30     <li>Git provides a low-level interface and all the important features as part of the Git suite.
31     Mercurial provides some important features just as extension (which might not work on upgrades or
32     don't play together with other extensions).</li>
33     <li>more and more software we have to deal with is available in Git repositories</li>
34 </ul>
35
36 <p>So whereas Mercurial used to work just fine for us in most cases Git provides the better approach
37 for us nowadays.</p>
38
39 <h2>Current state</h2>
40
41 <p>Thanks to our <a href="http://git.grml.org/?p=hg-to-git.git;a=summary">hg-to-git tools</a> the
42 migration itself took less than 1 hour and all repositories have been migrated from <a
43     href="http://hg.grml.org/">hg.grml.org</a> to <a href="http://git.grml.org/">git.grml.org</a>.</p>
44
45 <p>By today (1st of october 2008) the grml mercurial repositories are deprecated and the official
46 place for grml's sources is <strong><a href="http://git.grml.org/">git.grml.org</a></strong>. The mercurial hosting will be deactivated within the next few weeks.</p>
47
48 <p>All the documentation and scripts of grml are being updated to reflect the changes and updated URLs
49 but it has not been finished yet. So if you find something still mentioning hg.grml.org instead of
50 git.grml.org please <a href="http://grml.org/contact/">let us know</a>, thanks!</p>
51
52 <p>As usual we provide documentation about our setup and tools:
53 <strong><a href="http://grml.org/git/">grml.org/git/</a></strong></p>
54
55 <p>We highly appreciate any help, corrections and further feedback.</p>
56
57 <p>Special thanks to <a href="http://grml.org/team/#gebi">Michael Gebetsroither</a> for his work and
58 help on migrating.</p>