/usr/share/doc/phatch/html/bazaar.html is in phatch-doc 0.2.7.1-3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Bazaar and Launchpad — Phatch 0.2 documentation</title>
<link rel="stylesheet" href="_static/default.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: '',
VERSION: '0.2',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true
};
</script>
<script type="text/javascript" src="_static/jquery.js"></script>
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
<link rel="top" title="Phatch 0.2 documentation" href="index.html" />
<link rel="next" title="Code Style: PEP8" href="pep8.html" />
<link rel="prev" title="Become a Phatch developer!" href="index.html" />
</head>
<body>
<div class="related">
<h3>Navigation</h3>
<ul>
<li class="right" style="margin-right: 10px">
<a href="genindex.html" title="General Index"
accesskey="I">index</a></li>
<li class="right" >
<a href="py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="right" >
<a href="pep8.html" title="Code Style: PEP8"
accesskey="N">next</a> |</li>
<li class="right" >
<a href="index.html" title="Become a Phatch developer!"
accesskey="P">previous</a> |</li>
<li><a href="index.html">Phatch 0.2 documentation</a> »</li>
</ul>
</div>
<div class="document">
<div class="documentwrapper">
<div class="bodywrapper">
<div class="body">
<div class="section" id="bazaar-and-launchpad">
<h1>Bazaar and Launchpad<a class="headerlink" href="#bazaar-and-launchpad" title="Permalink to this headline">¶</a></h1>
<p>For Phatch we use <a class="reference external" href="http://bazaar.canonical.com">bazaar</a> (distributed version control) and <a class="reference external" href="https://launchpad.net/phatch">launchpad</a>. We will describe the steps here to get you up and running for Phatch development.</p>
<div class="section" id="id1">
<h2>Launchpad<a class="headerlink" href="#id1" title="Permalink to this headline">¶</a></h2>
<ol class="arabic simple">
<li>To <a class="reference external" href="https://help.launchpad.net/YourAccount/NewAccount">create a new Launchpad account</a>, visit the account <a class="reference external" href="https://launchpad.net/+login">sign-up page</a>. All you need is an email address that Launchpad can use to contact you.</li>
<li>Create a ssh key and <a class="reference external" href="https://help.launchpad.net/YourAccount/CreatingAnSSHKeyPair">upload</a> it to your launchpad profile.</li>
<li>Apply for membership of the <a class="reference external" href="https://launchpad.net/~phatch-dev">phatch-dev</a> team.</li>
<li>This last step is optional. If you want to stay up to date with all bug reports, blueprints (new features), ... apply for membership of the <a class="reference external" href="https://launchpad.net/~phatch-launchpad">phatch-launchpad</a> team. Warning: this might flood your inbox with a lot of email!</li>
</ol>
<div class="admonition note">
<p class="first admonition-title">Note</p>
<p class="last">It is very important that you not only log any activity you do for Phatch on launchpad as bugs or blueprints, but also report progress and de-assign yourself if you quit working on something.</p>
</div>
</div>
<div class="section" id="id2">
<h2>Bazaar<a class="headerlink" href="#id2" title="Permalink to this headline">¶</a></h2>
<div class="section" id="getting-started-with-bazaar">
<h3>Getting Started with Bazaar<a class="headerlink" href="#getting-started-with-bazaar" title="Permalink to this headline">¶</a></h3>
<ol class="arabic">
<li><p class="first">Download and install bazaar.</p>
<ul>
<li><p class="first">Windows: Download the <a class="reference external" href="http://wiki.bazaar.canonical.com/WindowsDownloads">standalone installer</a>.</p>
</li>
<li><p class="first">Mac OS X: Download the <a class="reference external" href="http://wiki.bazaar.canonical.com/MacOSXDownloads">application bundle</a>.</p>
</li>
<li><p class="first">Linux: Get bazaar from the repositories, for example for Ubuntu/Debian ...</p>
<p>If you want only the command line version:</p>
<div class="highlight-python"><pre>sudo apt-get install bzr</pre>
</div>
<p>If you want to use bzr with a GUI and nautilus integration, you could install (some only available from Ubuntu Lucid):</p>
<div class="highlight-python"><pre>sudo apt-get install bzr bzr-gtk bzr-explorer nautilus-bzr</pre>
</div>
</li>
</ul>
</li>
<li><p class="first">Tell bazaar who you are:</p>
<div class="highlight-python"><pre>bzr whoami "Your name <email@adress>"</pre>
</div>
</li>
<li><p class="first">Login to launchpad:</p>
<div class="highlight-python"><pre>bzr launchpad-login</pre>
</div>
</li>
<li><p class="first">Install the Phatch precommit hook.</p>
<p>This will check your code before committing to your branch. It tests your code it follows <a class="reference external" href="http://www.python.org/dev/peps/pep-0008/">PEP8</a>, does not break any doctests and has the right copyright and license. The precommit hook is the file <tt class="docutils literal"><span class="pre">tests/test_suite/bzr_precommit_test.py</span></tt> and should be placed in your bazaar plugin folder. In order to get your code accepted, you <strong>must</strong> use the precommit hook.</p>
<ul>
<li><p class="first">Linux and Mac OS X:</p>
<ol class="arabic simple">
<li>Install <tt class="docutils literal"><span class="pre">nosetests</span></tt> and <tt class="docutils literal"><span class="pre">licensecheck</span></tt>:</li>
</ol>
<blockquote>
<div><p>sudo apt-get install python-nose devscripts</p>
</div></blockquote>
<ol class="arabic simple" start="2">
<li>Symlink <tt class="docutils literal"><span class="pre">bzr_precommit_test.py</span></tt> to <tt class="docutils literal"><span class="pre">~/.bazaar/plugins/</span></tt></li>
</ol>
</li>
<li><p class="first">Windows:</p>
<ol class="arabic simple">
<li>Install <tt class="docutils literal"><span class="pre">nosetests</span></tt> (see <a class="reference external" href="http://somethingaboutorange.com/mrl/projects/nose">nose</a> website for more info):</li>
</ol>
<blockquote>
<div><p>easy_install nose</p>
</div></blockquote>
<ol class="arabic simple" start="2">
<li>Copy <tt class="docutils literal"><span class="pre">bzr_precommit_test.py</span></tt> to <tt class="docutils literal"><span class="pre">C:\Program</span> <span class="pre">Files\Bazaar\plugins</span></tt> and update it every time it changes.</li>
</ol>
</li>
</ul>
</li>
</ol>
</div>
<div class="section" id="using-bazaar">
<h3>Using Bazaar<a class="headerlink" href="#using-bazaar" title="Permalink to this headline">¶</a></h3>
<ol class="arabic">
<li><p class="first">For every new feature or bugfix you need to start a separate branch:</p>
<div class="highlight-python"><pre>bzr branch lp:phatch</pre>
</div>
<p>Or if you want to give it a specific name:</p>
<div class="highlight-python"><pre>bzr branch lp:phatch name_of_branch</pre>
</div>
<p>So it is not unusual that one user works on more than one branch. We prefer to merge branches as soon as they are stable to prevent large differences.</p>
</li>
<li><p class="first">To let other developers follow your progress, push your branch to launchpad:</p>
<div class="highlight-python"><pre>bzr push lp:~user_name/phatch/name_of_branch</pre>
</div>
</li>
<li><p class="first">Merge regularly with the main branch so it does not divert. At least merge every time before you start coding. The command is:</p>
<div class="highlight-python"><pre>bzr merge lp:phatch</pre>
</div>
<p>Do not use the command <tt class="docutils literal"><span class="pre">bzr</span> <span class="pre">update</span></tt> or <tt class="docutils literal"><span class="pre">bzr</span> <span class="pre">pull</span></tt>.</p>
</li>
<li><p class="first">When your branch is ready file a merge request. To do so, visit your branch’s overview page, click <em>Propose for merging into another branch</em>, then follow the on-screen instructions.</p>
</li>
</ol>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="sphinxsidebar">
<div class="sphinxsidebarwrapper">
<h3><a href="index.html">Table Of Contents</a></h3>
<ul>
<li><a class="reference internal" href="#">Bazaar and Launchpad</a><ul>
<li><a class="reference internal" href="#id1">Launchpad</a></li>
<li><a class="reference internal" href="#id2">Bazaar</a><ul>
<li><a class="reference internal" href="#getting-started-with-bazaar">Getting Started with Bazaar</a></li>
<li><a class="reference internal" href="#using-bazaar">Using Bazaar</a></li>
</ul>
</li>
</ul>
</li>
</ul>
<h4>Previous topic</h4>
<p class="topless"><a href="index.html"
title="previous chapter">Become a Phatch developer!</a></p>
<h4>Next topic</h4>
<p class="topless"><a href="pep8.html"
title="next chapter">Code Style: PEP8</a></p>
<div id="searchbox" style="display: none">
<h3>Quick search</h3>
<form class="search" action="search.html" method="get">
<input type="text" name="q" />
<input type="submit" value="Go" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
<p class="searchtip" style="font-size: 90%">
Enter search terms or a module, class or function name.
</p>
</div>
<script type="text/javascript">$('#searchbox').show(0);</script>
</div>
</div>
<div class="clearer"></div>
</div>
<div class="related">
<h3>Navigation</h3>
<ul>
<li class="right" style="margin-right: 10px">
<a href="genindex.html" title="General Index"
>index</a></li>
<li class="right" >
<a href="py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="right" >
<a href="pep8.html" title="Code Style: PEP8"
>next</a> |</li>
<li class="right" >
<a href="index.html" title="Become a Phatch developer!"
>previous</a> |</li>
<li><a href="index.html">Phatch 0.2 documentation</a> »</li>
</ul>
</div>
<div class="footer">
© Copyright 2009, www.stani.be.
Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 1.1.3.
</div>
</body>
</html>
|