hgbook

diff en/ch05-collab.xml @ 593:8dfdbe1cf982

Update Apache2 configuration.
author Bryan O'Sullivan <bos@serpentine.com>
date Thu Mar 26 22:00:32 2009 -0700 (2009-03-26)
parents b788b405e141
children 0b45854f0b7b
line diff
     1.1 --- a/en/ch05-collab.xml	Thu Mar 26 21:07:39 2009 -0700
     1.2 +++ b/en/ch05-collab.xml	Thu Mar 26 22:00:32 2009 -0700
     1.3 @@ -42,16 +42,16 @@
     1.4        the master Mercurial repository at <ulink
     1.5  	url="http://www.selenic.com/repo/hg?style=gitweb">http://www.selenic.com/repo/hg?style=gitweb</ulink>.</para>
     1.6  
     1.7 -    <para id="x_450">If you're interested in providing a web interface to your
     1.8 -      own repositories, Mercurial provides two ways to do this.  The
     1.9 -      first is using the <command role="hg-cmd">hg serve</command>
    1.10 -      command, which is best suited to short-term
    1.11 -      <quote>lightweight</quote> serving.  See section <xref
    1.12 +    <para id="x_450">If you're interested in providing a web interface
    1.13 +      to your own repositories, Mercurial provides two ways to do
    1.14 +      this.  The first is using the <command role="hg-cmd">hg
    1.15 +	serve</command> command, which is best suited to short-term
    1.16 +      <quote>lightweight</quote> serving.  See <xref
    1.17  	linkend="sec:collab:serve"/> below for details of how to use
    1.18        this command.  If you have a long-lived repository that you'd
    1.19        like to make permanently available, Mercurial has built-in
    1.20        support for the CGI (Common Gateway Interface) standard, which
    1.21 -      all common web servers support.  See section <xref
    1.22 +      all common web servers support.  See <xref
    1.23  	linkend="sec:collab:cgi"/> for details of CGI
    1.24        configuration.</para>
    1.25  
    1.26 @@ -115,19 +115,19 @@
    1.27  	place) and spend several days more or less locked in there,
    1.28  	hacking intensely on a handful of projects.</para>
    1.29  
    1.30 -      <para id="x_457">A sprint is the perfect place to use the <command
    1.31 -	  role="hg-cmd">hg serve</command> command, since <command
    1.32 -	  role="hg-cmd">hg serve</command> does not require any fancy
    1.33 -	server infrastructure.  You can get started with <command
    1.34 -	  role="hg-cmd">hg serve</command> in moments, by reading
    1.35 -	section <xref linkend="sec:collab:serve"/> below.  Then simply
    1.36 -	tell
    1.37 -	the person next to you that you're running a server, send the
    1.38 -	URL to them in an instant message, and you immediately have a
    1.39 -	quick-turnaround way to work together.  They can type your URL
    1.40 -	into their web browser and quickly review your changes; or
    1.41 -	they can pull a bugfix from you and verify it; or they can
    1.42 -	clone a branch containing a new feature and try it out.</para>
    1.43 +      <para id="x_457">A sprint is the perfect place to use the
    1.44 +	<command role="hg-cmd">hg serve</command> command, since
    1.45 +	<command role="hg-cmd">hg serve</command> does not require any
    1.46 +	fancy server infrastructure.  You can get started with
    1.47 +	<command role="hg-cmd">hg serve</command> in moments, by
    1.48 +	reading <xref linkend="sec:collab:serve"/> below.  Then simply
    1.49 +	tell the person next to you that you're running a server, send
    1.50 +	the URL to them in an instant message, and you immediately
    1.51 +	have a quick-turnaround way to work together.  They can type
    1.52 +	your URL into their web browser and quickly review your
    1.53 +	changes; or they can pull a bugfix from you and verify it; or
    1.54 +	they can clone a branch containing a new feature and try it
    1.55 +	out.</para>
    1.56  
    1.57        <para id="x_458">The charm, and the problem, with doing things in an ad hoc
    1.58  	fashion like this is that only people who know about your
    1.59 @@ -162,16 +162,15 @@
    1.60  	lets us put off publishing the potentially unsafe change until
    1.61  	it has had a little testing.</para>
    1.62  
    1.63 -      <para id="x_45c">In this kind of scenario, people usually use the
    1.64 -	<command>ssh</command> protocol to securely push changes to
    1.65 -	the central repository, as documented in section <xref
    1.66 -	  linkend="sec:collab:ssh"/>.  It's also
    1.67 -	usual to publish a read-only copy of the repository over HTTP
    1.68 -	using CGI, as in section <xref linkend="sec:collab:cgi"/>.
    1.69 -	Publishing over HTTP
    1.70 -	satisfies the needs of people who don't have push access, and
    1.71 -	those who want to use web browsers to browse the repository's
    1.72 -	history.</para>
    1.73 +      <para id="x_45c">In this kind of scenario, people usually use
    1.74 +	the <command>ssh</command> protocol to securely push changes
    1.75 +	to the central repository, as documented in <xref
    1.76 +	  linkend="sec:collab:ssh"/>.  It's also usual to publish a
    1.77 +	read-only copy of the repository over HTTP using CGI, as in
    1.78 +	<xref linkend="sec:collab:cgi"/>. Publishing
    1.79 +	over HTTP satisfies the needs of people who don't have push
    1.80 +	access, and those who want to use web browsers to browse the
    1.81 +	repository's history.</para>
    1.82  
    1.83      </sect2>
    1.84      <sect2>
    1.85 @@ -402,14 +401,14 @@
    1.86      <sect2>
    1.87        <title>Where collaboration meets branch management</title>
    1.88  
    1.89 -      <para id="x_479">Once you and your team set up some shared repositories and
    1.90 -	start propagating changes back and forth between local and
    1.91 -	shared repos, you begin to face a related, but slightly
    1.92 -	different challenge: that of managing the multiple directions
    1.93 -	in which your team may be moving at once.  Even though this
    1.94 -	subject is intimately related to how your team collaborates,
    1.95 -	it's dense enough to merit treatment of its own, in chapter
    1.96 -	<xref linkend="chap:branch"/>.</para>
    1.97 +      <para id="x_479">Once you and your team set up some shared
    1.98 +	repositories and start propagating changes back and forth
    1.99 +	between local and shared repos, you begin to face a related,
   1.100 +	but slightly different challenge: that of managing the
   1.101 +	multiple directions in which your team may be moving at once.
   1.102 +	Even though this subject is intimately related to how your
   1.103 +	team collaborates, it's dense enough to merit treatment of its
   1.104 +	own, in <xref linkend="chap:branch"/>.</para>
   1.105  
   1.106      </sect2>
   1.107    </sect1>
   1.108 @@ -1110,15 +1109,17 @@
   1.109        <para id="x_4d6">You'll need to copy this script into your <filename
   1.110  	  class="directory">public_html</filename> directory, and
   1.111  	ensure that it's executable.</para>
   1.112 +
   1.113        <programlisting>cp .../hgwebdir.cgi ~/public_html
   1.114  chmod 755 ~/public_html ~/public_html/hgwebdir.cgi</programlisting>
   1.115 -      <para id="x_4d7">With basic configuration out of the way, try to visit
   1.116 -	<ulink url="http://myhostname/
   1.117 +
   1.118 +      <para id="x_4d7">With basic configuration out of the way, try to
   1.119 +	visit <ulink url="http://myhostname/
   1.120  	  myuser/hgwebdir.cgi">http://myhostname/
   1.121  	  myuser/hgwebdir.cgi</ulink> in your browser.  It should
   1.122  	display an empty list of repositories.  If you get a blank
   1.123  	window or error message, try walking through the list of
   1.124 -	potential problems in section <xref
   1.125 +	potential problems in <xref
   1.126  	  linkend="sec:collab:wtf"/>.</para>
   1.127  
   1.128        <para id="x_4d8">The <filename role="special">hgwebdir.cgi</filename>
   1.129 @@ -1313,15 +1314,16 @@
   1.130  	    rows when you are looking at a table, this number controls
   1.131  	    the number of rows in each stripe.</para>
   1.132  	</listitem>
   1.133 -	<listitem><para id="x_4f0"><envar role="rc-item-web">style</envar>:
   1.134 -	    Controls the template Mercurial uses to display the web
   1.135 -	    interface.  Mercurial ships with two web templates, named
   1.136 +	<listitem><para id="x_4f0"><envar
   1.137 +	      role="rc-item-web">style</envar>: Controls the template
   1.138 +	    Mercurial uses to display the web interface.  Mercurial
   1.139 +	    ships with two web templates, named
   1.140  	    <literal>default</literal> and <literal>gitweb</literal>
   1.141  	    (the latter is much more visually attractive).  You can
   1.142 -	    also specify a custom template of your own; see chapter
   1.143 -	    <xref linkend="chap:template"/> for details.
   1.144 -	    Here, you can see how to enable the
   1.145 -	    <literal>gitweb</literal> style.</para>
   1.146 +	    also specify a custom template of your own; see 
   1.147 +	    <xref linkend="chap:template"/> for details. Here, you can
   1.148 +	    see how to enable the <literal>gitweb</literal>
   1.149 +	    style.</para>
   1.150  	  <programlisting>[web]
   1.151  style = gitweb</programlisting>
   1.152  	</listitem>