Update developer manual with new macOS packaging instructions
[privoxy.git] / doc / webserver / developer-manual / git.html
index e9c8d75..e835f4a 100644 (file)
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-  <title>The Git Repository</title>
-  <meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-  <link rel="HOME" title="Privoxy Developer Manual" href="index.html">
-  <link rel="PREVIOUS" title="Introduction" href="introduction.html">
-  <link rel="NEXT" title="Documentation Guidelines" href="documentation.html">
-  <link rel="STYLESHEET" type="text/css" href="../p_doc.css">
-  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-</head>
-<body class="SECT1" bgcolor="#EEEEEE" text="#000000" link="#0000FF" vlink="#840084" alink="#0000FF">
-  <div class="NAVHEADER">
-    <table summary="Header navigation table" width="100%" border="0" cellpadding="0" cellspacing="0">
-      <tr>
-        <th colspan="3" align="center">Privoxy Developer Manual</th>
-      </tr>
-      <tr>
-        <td width="10%" align="left" valign="bottom"><a href="introduction.html" accesskey="P">Prev</a></td>
-        <td width="80%" align="center" valign="bottom"></td>
-        <td width="10%" align="right" valign="bottom"><a href="documentation.html" accesskey="N">Next</a></td>
-      </tr>
-    </table>
-    <hr align="left" width="100%">
-  </div>
-  <div class="SECT1">
-    <h1 class="SECT1"><a name="GIT" id="GIT">2. The Git Repository</a></h1>
-    <p>If you become part of the active development team, you will eventually need write access to our holy grail, the
-    Git repository. One of the team members will need to set this up for you. Please read this chapter completely
-    before accessing via Git.</p>
-    <div class="SECT2">
-      <h2 class="SECT2"><a name="GITACCESS" id="GITACCESS">2.1. Access to Git</a></h2>
-      <p>The project's Git repository is hosted on the <a href="https://www.privoxy.org/" target="_top">Privoxy
-      webserver</a>. For Privoxy team members with push privileges the Git repository URL is <tt class=
-      "LITERAL">ssh://git@git.privoxy.org:23/git/privoxy.git</tt>.</p>
-      <p>Contributors without push privileges can <span class="QUOTE">"git clone
-      https://www.privoxy.org/git/privoxy.git"</span>.</p>
-      <p>The central repository is called <tt class="LITERAL">privoxy</tt>, and the source branch is called <tt class=
-      "LITERAL">master</tt>. Subfolders exist within the project for target-dependent build and packaging tools, each
-      including the name of the target operating system in their name (e.g. Windows, OSXPackageBuilder, debian). There
-      is a webview of the Git hierarchy at <a href="https://www.privoxy.org/gitweb/?p=privoxy.git;a=tree" target=
-      "_top">https://www.privoxy.org/gitweb/?p=privoxy.git;a=tree</a>, which might help with visualizing how these
-      pieces fit together.</p>
-    </div>
-    <div class="SECT2">
-      <h2 class="SECT2"><a name="GITBRANCHES" id="GITBRANCHES">2.2. Branches</a></h2>
-      <p>Whilst the central repository contains only the master branch, developers are of course free to create
-      branches in their local repositories as they develop features, fixes, or update the target-dependent tools. Only
-      once such changes are fully tested ought they be pushed back to the central repository master branch.</p>
-      <p>Before pushing stuff, please rebase it on a current master so we get an uncomplicated commit history. Avoid
-      merges where possible.</p>
-      <p>Here's an example git sesssion that should result in a merge-free history:</p>
-      <table border="0" bgcolor="#E0E0E0" width="100%">
-        <tr>
-          <td>
-            <pre class="PROGRAMLISTING">  fk@t520 ~/git/privoxy $git checkout master
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<HTML
+><HEAD
+><TITLE
+>The Git Repository</TITLE
+><META
+NAME="GENERATOR"
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
+REL="HOME"
+TITLE="Privoxy Developer Manual"
+HREF="index.html"><LINK
+REL="PREVIOUS"
+TITLE="Introduction"
+HREF="introduction.html"><LINK
+REL="NEXT"
+TITLE="Documentation Guidelines"
+HREF="documentation.html"><LINK
+REL="STYLESHEET"
+TYPE="text/css"
+HREF="../p_doc.css"><META
+HTTP-EQUIV="Content-Type"
+CONTENT="text/html;
+charset=ISO-8859-1"></HEAD
+><BODY
+CLASS="SECT1"
+BGCOLOR="#EEEEEE"
+TEXT="#000000"
+LINK="#0000FF"
+VLINK="#840084"
+ALINK="#0000FF"
+><DIV
+CLASS="NAVHEADER"
+><TABLE
+SUMMARY="Header navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TH
+COLSPAN="3"
+ALIGN="center"
+>Privoxy Developer Manual</TH
+></TR
+><TR
+><TD
+WIDTH="10%"
+ALIGN="left"
+VALIGN="bottom"
+><A
+HREF="introduction.html"
+ACCESSKEY="P"
+>Prev</A
+></TD
+><TD
+WIDTH="80%"
+ALIGN="center"
+VALIGN="bottom"
+></TD
+><TD
+WIDTH="10%"
+ALIGN="right"
+VALIGN="bottom"
+><A
+HREF="documentation.html"
+ACCESSKEY="N"
+>Next</A
+></TD
+></TR
+></TABLE
+><HR
+ALIGN="LEFT"
+WIDTH="100%"></DIV
+><DIV
+CLASS="SECT1"
+><H1
+CLASS="SECT1"
+><A
+NAME="GIT"
+>2. The Git Repository</A
+></H1
+><P
+>      If you become part of the active development team, you will eventually
+      need write access to our holy grail, the Git repository. One of the
+      team members will need to set this up for you. Please read
+      this chapter completely before accessing via Git.
+    </P
+><DIV
+CLASS="SECT2"
+><H2
+CLASS="SECT2"
+><A
+NAME="GITACCESS"
+>2.1. Access to Git</A
+></H2
+><P
+>        The project's Git repository is hosted on the
+        <A
+HREF="https://www.privoxy.org/"
+TARGET="_top"
+>Privoxy webserver</A
+>.
+        For Privoxy team members with push privileges the Git repository URL is
+        <TT
+CLASS="LITERAL"
+>ssh://git@git.privoxy.org:23/git/privoxy.git</TT
+>.
+      </P
+><P
+>       Contributors without push privileges can
+       <SPAN
+CLASS="QUOTE"
+>"git clone https://www.privoxy.org/git/privoxy.git"</SPAN
+>.
+      </P
+><P
+>        The central repository is called <TT
+CLASS="LITERAL"
+>privoxy</TT
+>, and the
+        source branch is called <TT
+CLASS="LITERAL"
+>master</TT
+>. Subfolders exist
+        within the project for target-dependent build and  packaging tools, each
+        including the name of the target operating system in their name (e.g.
+        Windows, OSXPackageBuilder, debian). There is a webview of the Git
+        hierarchy at
+        <A
+HREF="https://www.privoxy.org/gitweb/?p=privoxy.git;a=tree"
+TARGET="_top"
+>                    https://www.privoxy.org/gitweb/?p=privoxy.git;a=tree</A
+>,
+        which might help with visualizing how these pieces fit together.
+      </P
+></DIV
+><DIV
+CLASS="SECT2"
+><H2
+CLASS="SECT2"
+><A
+NAME="GITBRANCHES"
+>2.2. Branches</A
+></H2
+><P
+>       Whilst the central repository contains only the master branch, developers
+       are of course free to create branches in their local repositories as they
+       develop features, fixes, or update the target-dependent tools. Only once
+       such changes are fully tested ought they be pushed back to the central
+       repository master branch.
+     </P
+><P
+>       Before pushing stuff, please rebase it on a current master so we get
+       an uncomplicated commit history. Avoid merges where possible.
+     </P
+><P
+>       Here's an example git sesssion that should result in a merge-free history:
+     </P
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>  fk@t520 ~/git/privoxy $git checkout master
   Switched to branch 'master'
   Your branch is up to date with 'origin/master'.
   # Make sure you have the latest changes
   fk@t520 ~/git/privoxy $git checkout local-branch
   # Rebase on top of master and continue hacking
   fk@t520 ~/git/privoxy $git rebase master
-  Successfully rebased and updated refs/heads/local-branch.</pre>
-          </td>
-        </tr>
-      </table>
-      <p>At one time there were two distinct branches: stable and unstable. The more drastic changes were to be in the
-      unstable branch. These branches have now been merged to minimize time and effort of maintaining two branches.</p>
-    </div>
-    <div class="SECT2">
-      <h2 class="SECT2"><a name="GITCOMMIT" id="GITCOMMIT">2.3. Git Commit Guidelines</a></h2>
-      <p>The source tree is the heart of every software project. Every effort must be made to ensure that it is
-      readable, compilable and consistent at all times. We expect anyone with Git access to strictly adhere to the
-      following guidelines:</p>
-      <p>Basic Guidelines, for all branches:</p>
-      <ul>
-        <li>
-          <p>Please don't commit even a small change without testing it thoroughly first. When we're close to a public
-          release, ask a fellow developer to review your changes.</p>
-        </li>
-        <li>
-          <p>Your commit message should give a concise overview of <span class="emphasis"><i class="EMPHASIS">what you
-          changed</i></span> (no big details) and <span class="emphasis"><i class="EMPHASIS">why you changed
-          it</i></span> Just check previous messages for good examples.</p>
-        </li>
-        <li>
-          <p>Don't use the same message on multiple files, unless it equally applies to all those files.</p>
-        </li>
-        <li>
-          <p>If your changes span multiple files, and the code won't recompile unless all changes are committed (e.g.
-          when changing the signature of a function), then commit all files one after another, without long delays in
-          between. If necessary, prepare the commit messages in advance.</p>
-        </li>
-        <li>
-          <p>Before changing things on Git, make sure that your changes are in line with the team's general consensus
-          on what should be done.</p>
-        </li>
-        <li>
-          <p>Note that near a major public release, we get more cautious. There is always the possibility to submit a
-          patch to the <a href="https://sourceforge.net/p/ijbswa/patches/" target="_top">patch tracker</a> or the
-          <a href="https://lists.privoxy.org/mailman/listinfo/privoxy-devel" target="_top">privoxy-devel mailing
-          list</a> instead.</p>
-        </li>
-      </ul>
-    </div>
-  </div>
-  <div class="NAVFOOTER">
-    <hr align="left" width="100%">
-    <table summary="Footer navigation table" width="100%" border="0" cellpadding="0" cellspacing="0">
-      <tr>
-        <td width="33%" align="left" valign="top"><a href="introduction.html" accesskey="P">Prev</a></td>
-        <td width="34%" align="center" valign="top"><a href="index.html" accesskey="H">Home</a></td>
-        <td width="33%" align="right" valign="top"><a href="documentation.html" accesskey="N">Next</a></td>
-      </tr>
-      <tr>
-        <td width="33%" align="left" valign="top">Introduction</td>
-        <td width="34%" align="center" valign="top">&nbsp;</td>
-        <td width="33%" align="right" valign="top">Documentation Guidelines</td>
-      </tr>
-    </table>
-  </div>
-</body>
-</html>
+  Successfully rebased and updated refs/heads/local-branch.</PRE
+></TD
+></TR
+></TABLE
+><P
+>      At one time there were two distinct branches: stable and unstable. The
+      more drastic changes were to be in the unstable branch. These branches
+      have now been merged to minimize time and effort of maintaining two
+      branches.
+     </P
+></DIV
+><DIV
+CLASS="SECT2"
+><H2
+CLASS="SECT2"
+><A
+NAME="GITCOMMIT"
+>2.3. Git Commit Guidelines</A
+></H2
+><P
+>        The source tree is the heart of every software project. Every effort must
+        be made to ensure that it is readable, compilable and consistent at all
+        times.  We expect anyone with Git access to strictly
+        adhere to the following guidelines:
+      </P
+><P
+>       Basic Guidelines, for all branches:
+      </P
+><P
+></P
+><UL
+><LI
+><P
+>            Please don't commit even
+            a small change without testing it thoroughly first. When we're
+            close to a public release, ask a fellow developer to review your
+            changes.
+          </P
+></LI
+><LI
+><P
+>            Your commit message should give a concise overview of <SPAN
+CLASS="emphasis"
+><I
+CLASS="EMPHASIS"
+>what you
+            changed</I
+></SPAN
+> (no big details) and <SPAN
+CLASS="emphasis"
+><I
+CLASS="EMPHASIS"
+>why you changed it</I
+></SPAN
+>
+            Just check previous messages for good examples.
+          </P
+></LI
+><LI
+><P
+>            Don't use the same message on multiple files, unless it equally applies to
+            all those files.
+          </P
+></LI
+><LI
+><P
+>            If your changes span multiple files, and the code won't recompile unless
+            all changes are committed (e.g. when changing the signature of a function),
+            then commit all files one after another, without long delays in between.
+            If necessary, prepare the commit messages in advance.
+          </P
+></LI
+><LI
+><P
+>            Before changing things on Git, make sure that your changes are in line
+            with the team's general consensus on what should be done.
+          </P
+></LI
+><LI
+><P
+>            Note that near a major public release, we get more cautious.
+            There is always the possibility to submit a patch to the <A
+HREF="https://sourceforge.net/p/ijbswa/patches/"
+TARGET="_top"
+>patch
+            tracker</A
+> or the <A
+HREF="https://lists.privoxy.org/mailman/listinfo/privoxy-devel"
+TARGET="_top"
+>privoxy-devel mailing list</A
+>
+            instead.
+          </P
+></LI
+></UL
+></DIV
+></DIV
+><DIV
+CLASS="NAVFOOTER"
+><HR
+ALIGN="LEFT"
+WIDTH="100%"><TABLE
+SUMMARY="Footer navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+><A
+HREF="introduction.html"
+ACCESSKEY="P"
+>Prev</A
+></TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="index.html"
+ACCESSKEY="H"
+>Home</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+><A
+HREF="documentation.html"
+ACCESSKEY="N"
+>Next</A
+></TD
+></TR
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+>Introduction</TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+>&nbsp;</TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+>Documentation Guidelines</TD
+></TR
+></TABLE
+></DIV
+></BODY
+></HTML
+>
\ No newline at end of file