source: general/prog/mercurial.xml@ 77879af

systemd-11177
Last change on this file since 77879af was 77879af, checked in by Krejzi <krejzi@…>, 10 years ago

Finalize programming section.

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/branches/systemd@14072 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 7.1 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY mercurial-download-http "http://mercurial.selenic.com/release/mercurial-&mercurial-version;.tar.gz">
8 <!ENTITY mercurial-download-ftp " ">
9 <!ENTITY mercurial-md5sum "d3916736a9d356899191409e546b5964">
10 <!ENTITY mercurial-size "3.8 MB">
11 <!ENTITY mercurial-buildsize "44 MB (additional 250 MB for the tests and 2 MB for docs generation)
12
13">
14 <!ENTITY mercurial-time "less than 0.1 SBU (additional 8.8 SBU for tests)">
15]>
16
17<sect1 id="mercurial" xreflabel="Mercurial-&mercurial-version;">
18 <?dbhtml filename="mercurial.html"?>
19
20 <sect1info>
21 <othername>$LastChangedBy$</othername>
22 <date>$Date$</date>
23 </sect1info>
24
25 <title>Mercurial-&mercurial-version;</title>
26
27 <indexterm zone="mercurial">
28 <primary sortas="a-mercurial">mercurial</primary>
29 </indexterm>
30
31 <sect2 role="package">
32 <title>Introduction to Mercurial</title>
33
34 <para><application>Mercurial</application> is a distributed source control
35 management tool similar to <application>Git</application> and
36 <application>Bazaar</application>. <application>Mercurial</application> is
37 written in <application>Python</application> and is used by projects such as
38 Mozilla and Vim.</para>
39
40 &lfs76_checked;
41
42 <bridgehead renderas="sect3">Package Information</bridgehead>
43 <itemizedlist spacing="compact">
44 <listitem>
45 <para>Download (HTTP): <ulink url="&mercurial-download-http;"/></para>
46 </listitem>
47 <listitem>
48 <para>Download (FTP): <ulink url="&mercurial-download-ftp;"/></para>
49 </listitem>
50 <listitem>
51 <para>Download MD5 sum: &mercurial-md5sum;</para>
52 </listitem>
53 <listitem>
54 <para>Download size: &mercurial-size;</para>
55 </listitem>
56 <listitem>
57 <para>Estimated disk space required: &mercurial-buildsize;</para>
58 </listitem>
59 <listitem>
60 <para>Estimated build time: &mercurial-time;</para>
61 </listitem>
62 </itemizedlist>
63
64 <bridgehead renderas="sect3">Mercurial Dependencies</bridgehead>
65
66 <bridgehead renderas="sect4">Required</bridgehead>
67 <para role="required">
68 <xref linkend="python2"/>
69 </para>
70
71 <bridgehead renderas="sect4">Optional</bridgehead>
72 <para role="optional">
73 <xref linkend="bazaar"/>,
74 <xref linkend="cvs"/>,
75 <xref linkend="git"/>,
76 <xref linkend="gnupg2"/> (<command>gpg2</command> with Python bindings),
77 <xref linkend="subversion"/> (with Python bindings),
78 <ulink url="http://docutils.sourceforge.net/">Docutils</ulink> (required to build the documentation),
79 <ulink url="http://pypi.python.org/pypi/pyflakes">pyflakes</ulink>,
80 <ulink url="http://pygments.org/">pygments</ulink>, and
81 <ulink url="https://launchpad.net/pyopenssl">pyOpenSSL</ulink>
82
83 </para>
84
85 <para condition="html" role="usernotes">User Notes:
86 <ulink url="&blfs-wiki;/mercurial"/></para>
87
88 </sect2>
89
90 <sect2 role="installation">
91 <title>Installation of Mercurial</title>
92
93 <para>Build <application>Mercurial</application> by issuing the following
94 command:</para>
95
96<screen><userinput>make build</userinput></screen>
97
98 <para>To build the documentation (requires
99 <application>Docutils</application>), issue:</para>
100
101<screen><userinput>make doc</userinput></screen>
102
103 <para>Running the test suite is optional. Failure of test-patchbomb is
104 expected with <application>Python-2.7.x</application> (x &gt; 7). To test
105 the results in the subdiretory
106 <filename class="directory">tests/tmp</filename>,
107 skipping the failing test, issue:</para>
108
109<screen><userinput>cat &gt; tests/blacklists/test-failed &lt;&lt; "EOF"
110<literal># Failure with Python-2.7.8
111 test-patchbomb.t</literal>
112EOF
113rm -rf tests/tmp &amp;&amp;
114TESTFLAGS="--tmpdir tmp --blacklist blacklists/test-failed" \
115make check</userinput></screen>
116
117 <para>Tests may be run in parallel, just add
118 <quote>-j$(getconf _NPROCESSORS_ONLN)</quote> to TESTFLAGS.</para>
119
120 <para>Install <application>Mercurial</application> by running
121 the following command (as <systemitem class="username">root</systemitem>):</para>
122
123<screen role="root"><userinput>make PREFIX=/usr install-bin</userinput></screen>
124
125 <para>If you built the documentation, install it by running
126 the following command (as <systemitem class="username">root</systemitem>):</para>
127
128<screen role="root"><userinput>make PREFIX=/usr install-doc</userinput></screen>
129
130 <para>After installed, two very quick and simple tests should run correctly.
131 First one needs some configuration:</para>
132
133<screen><userinput>cat &gt;&gt; ~/.hgrc &lt;&lt; "EOF"
134<literal>[ui]
135username = &lt;user_name&gt; &lt;your@mail&gt;</literal>
136EOF</userinput></screen>
137
138 <para>where you must replace &lt;user_name&gt; and &lt;your@mail&gt; (mail
139 is optional and can be omitted). With the user identity defined, run
140 <command>hg debuginstall</command> and several lines will be displayed,
141 the last one reading "no problems detected". Another quick and simple test
142 is just <command>hg</command>, which should output basic commands that can
143 be used with <command>hg</command>.</para>
144
145 </sect2>
146
147 <sect2 role="configuration">
148 <title>Configuring Mercurial</title>
149
150 <sect3 id="mercurial-config">
151 <title>Config Files</title>
152
153 <para>
154 <filename>/etc/mercurial/hgrc</filename>
155 </para>
156
157 <indexterm zone="mercurial mercurial-config">
158 <primary sortas="e-etc-mercurial-hgrc">/etc/mercurial/hgrc</primary>
159 </indexterm>
160
161 <para>
162 If you have installed the <xref linkend="cacerts"/> and you want
163 <application>Mercurial</application> to use them, as the
164 <systemitem class="username">root</systemitem> user:
165 </para>
166
167<screen role="root"><userinput>install -v -d -m755 /etc/mercurial &amp;&amp;
168cat &gt; /etc/mercurial/hgrc &lt;&lt; "EOF"
169<literal>[web]
170cacerts = /etc/ssl/ca-bundle.crt</literal>
171EOF</userinput></screen>
172
173 </sect3>
174
175 </sect2>
176
177 <sect2 role="content">
178 <title>Contents</title>
179
180 <segmentedlist>
181 <segtitle>Installed Programs</segtitle>
182 <segtitle>Installed Libraries</segtitle>
183 <segtitle>Installed Directories</segtitle>
184
185 <seglistitem>
186 <seg>hg</seg>
187 <seg>several under /usr/lib/python&python2-majorver;/site-packages/mercurial</seg>
188 <seg>/etc/mercurial, /usr/lib/python&python2-majorver;/site-packages/hgext and
189 /usr/lib/python&python2-majorver;/site-packages/mercurial</seg>
190 </seglistitem>
191 </segmentedlist>
192
193 <variablelist>
194 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
195 <?dbfo list-presentation="list"?>
196 <?dbhtml list-presentation="table"?>
197
198 <varlistentry id="hg">
199 <term><command>hg</command></term>
200 <listitem>
201 <para>is the program file for mercurial.</para>
202 <indexterm zone="mercurial hg">
203 <primary sortas="b-hg">hg</primary>
204 </indexterm>
205 </listitem>
206 </varlistentry>
207
208 </variablelist>
209
210 </sect2>
211
212</sect1>
Note: See TracBrowser for help on using the repository browser.