summaryrefslogtreecommitdiffstats
path: root/everyday.html
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2014-10-16 14:30:32 -0700
committerJunio C Hamano <gitster@pobox.com>2014-10-16 14:30:32 -0700
commit446e30b8ca9d2ed5f79814a26938ed23e275bf83 (patch)
tree9d7d35058a1d74bfa1d9a93f9bfb0bc3515289c8 /everyday.html
parent9236fea47fdd276f1023b03ded5acff2e8d9c213 (diff)
downloadgit-htmldocs-446e30b8ca9d2ed5f79814a26938ed23e275bf83.tar.gz
Autogenerated HTML docs for v2.1.2-451-g98349
Diffstat (limited to 'everyday.html')
-rw-r--r--everyday.html769
1 files changed, 22 insertions, 747 deletions
diff --git a/everyday.html b/everyday.html
index 79e237c29..2d64271a2 100644
--- a/everyday.html
+++ b/everyday.html
@@ -3,7 +3,7 @@
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" />
-<meta name="generator" content="AsciiDoc 8.6.6" />
+<meta name="generator" content="AsciiDoc 8.6.9" />
<title>Everyday Git With 20 Commands Or So</title>
<style type="text/css">
/* Shared CSS for AsciiDoc xhtml11 and html5 backends */
@@ -87,10 +87,16 @@ ul, ol, li > p {
ul > li { color: #aaa; }
ul > li > * { color: black; }
-pre {
+.monospaced, code, pre {
+ font-family: "Courier New", Courier, monospace;
+ font-size: inherit;
+ color: navy;
padding: 0;
margin: 0;
}
+pre {
+ white-space: pre-wrap;
+}
#author {
color: #527bbd;
@@ -219,7 +225,7 @@ div.exampleblock > div.content {
}
div.imageblock div.content { padding-left: 0; }
-span.image img { border-style: none; }
+span.image img { border-style: none; vertical-align: text-bottom; }
a.image:visited { color: white; }
dl {
@@ -349,7 +355,7 @@ div.colist td img {
margin-bottom: 0.1em;
}
-div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 {
+div.toclevel0, div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 {
margin-top: 0;
margin-bottom: 0;
}
@@ -407,18 +413,14 @@ span.underline { text-decoration: underline; }
span.overline { text-decoration: overline; }
span.line-through { text-decoration: line-through; }
+div.unbreakable { page-break-inside: avoid; }
+
/*
* xhtml11 specific
*
* */
-tt {
- font-family: monospace;
- font-size: inherit;
- color: navy;
-}
-
div.tableblock {
margin-top: 1.0em;
margin-bottom: 1.5em;
@@ -452,12 +454,6 @@ div.tableblock > table[frame="vsides"] {
*
* */
-.monospaced {
- font-family: monospace;
- font-size: inherit;
- color: navy;
-}
-
table.tableblock {
margin-top: 1.0em;
margin-bottom: 1.5em;
@@ -537,6 +533,8 @@ body.manpage div.sectionbody {
@media print {
body.manpage div#toc { display: none; }
}
+
+
</style>
<script type="text/javascript">
/*<![CDATA[*/
@@ -581,7 +579,7 @@ toc: function (toclevels) {
function tocEntries(el, toclevels) {
var result = new Array;
- var re = new RegExp('[hH]([2-'+(toclevels+1)+'])');
+ var re = new RegExp('[hH]([1-'+(toclevels+1)+'])');
// Function that scans the DOM tree for header elements (the DOM2
// nodeIterator API would be a better technique but not supported by all
// browsers).
@@ -610,7 +608,7 @@ toc: function (toclevels) {
var i;
for (i = 0; i < toc.childNodes.length; i++) {
var entry = toc.childNodes[i];
- if (entry.nodeName == 'div'
+ if (entry.nodeName.toLowerCase() == 'div'
&& entry.getAttribute("class")
&& entry.getAttribute("class").match(/^toclevel/))
tocEntriesToRemove.push(entry);
@@ -656,7 +654,7 @@ footnotes: function () {
var entriesToRemove = [];
for (i = 0; i < noteholder.childNodes.length; i++) {
var entry = noteholder.childNodes[i];
- if (entry.nodeName == 'div' && entry.getAttribute("class") == "footnote")
+ if (entry.nodeName.toLowerCase() == 'div' && entry.getAttribute("class") == "footnote")
entriesToRemove.push(entry);
}
for (i = 0; i < entriesToRemove.length; i++) {
@@ -740,740 +738,17 @@ asciidoc.install();
<div id="content">
<div id="preamble">
<div class="sectionbody">
-<div class="paragraph"><p><a href="#Individual Developer (Standalone)">[Individual Developer (Standalone)]</a> commands are essential for
-anybody who makes a commit, even for somebody who works alone.</p></div>
-<div class="paragraph"><p>If you work with other people, you will need commands listed in
-the <a href="#Individual Developer (Participant)">[Individual Developer (Participant)]</a> section as well.</p></div>
-<div class="paragraph"><p>People who play the <a href="#Integrator">[Integrator]</a> role need to learn some more
-commands in addition to the above.</p></div>
-<div class="paragraph"><p><a href="#Repository Administration">[Repository Administration]</a> commands are for system
-administrators who are responsible for the care and feeding
-of Git repositories.</p></div>
-</div>
-</div>
-<div class="sect1">
-<h2 id="_individual_developer_standalone_a_id_individual_developer_standalone_a">Individual Developer (Standalone)<a id="Individual Developer (Standalone)"></a></h2>
-<div class="sectionbody">
-<div class="paragraph"><p>A standalone individual developer does not exchange patches with
-other people, and works alone in a single repository, using the
-following commands.</p></div>
-<div class="ulist"><ul>
-<li>
-<p>
-<a href="git-init.html">git-init(1)</a> to create a new repository.
-</p>
-</li>
-<li>
-<p>
-<a href="git-show-branch.html">git-show-branch(1)</a> to see where you are.
-</p>
-</li>
-<li>
-<p>
-<a href="git-log.html">git-log(1)</a> to see what happened.
-</p>
-</li>
-<li>
-<p>
-<a href="git-checkout.html">git-checkout(1)</a> and <a href="git-branch.html">git-branch(1)</a> to switch
- branches.
-</p>
-</li>
-<li>
-<p>
-<a href="git-add.html">git-add(1)</a> to manage the index file.
-</p>
-</li>
-<li>
-<p>
-<a href="git-diff.html">git-diff(1)</a> and <a href="git-status.html">git-status(1)</a> to see what
- you are in the middle of doing.
-</p>
-</li>
-<li>
-<p>
-<a href="git-commit.html">git-commit(1)</a> to advance the current branch.
-</p>
-</li>
-<li>
-<p>
-<a href="git-reset.html">git-reset(1)</a> and <a href="git-checkout.html">git-checkout(1)</a> (with
- pathname parameters) to undo changes.
-</p>
-</li>
-<li>
-<p>
-<a href="git-merge.html">git-merge(1)</a> to merge between local branches.
-</p>
-</li>
-<li>
-<p>
-<a href="git-rebase.html">git-rebase(1)</a> to maintain topic branches.
-</p>
-</li>
-<li>
-<p>
-<a href="git-tag.html">git-tag(1)</a> to mark known point.
-</p>
-</li>
-</ul></div>
-<div class="sect2">
-<h3 id="_examples">Examples</h3>
-<div class="dlist"><dl>
-<dt class="hdlist1">
-Use a tarball as a starting point for a new repository.
-</dt>
-<dd>
-<div class="listingblock">
-<div class="content">
-<pre><tt>$ tar zxf frotz.tar.gz
-$ cd frotz
-$ git init
-$ git add . <b>&lt;1&gt;</b>
-$ git commit -m "import of frotz source tree."
-$ git tag v2.43 <b>&lt;2&gt;</b></tt></pre>
-</div></div>
-<div class="colist arabic"><ol>
-<li>
-<p>
-add everything under the current directory.
-</p>
-</li>
-<li>
-<p>
-make a lightweight, unannotated tag.
-</p>
-</li>
-</ol></div>
-</dd>
-<dt class="hdlist1">
-Create a topic branch and develop.
-</dt>
-<dd>
-<div class="listingblock">
-<div class="content">
-<pre><tt>$ git checkout -b alsa-audio <b>&lt;1&gt;</b>
-$ edit/compile/test
-$ git checkout -- curses/ux_audio_oss.c <b>&lt;2&gt;</b>
-$ git add curses/ux_audio_alsa.c <b>&lt;3&gt;</b>
-$ edit/compile/test
-$ git diff HEAD <b>&lt;4&gt;</b>
-$ git commit -a -s <b>&lt;5&gt;</b>
-$ edit/compile/test
-$ git reset --soft HEAD^ <b>&lt;6&gt;</b>
-$ edit/compile/test
-$ git diff ORIG_HEAD <b>&lt;7&gt;</b>
-$ git commit -a -c ORIG_HEAD <b>&lt;8&gt;</b>
-$ git checkout master <b>&lt;9&gt;</b>
-$ git merge alsa-audio <b>&lt;10&gt;</b>
-$ git log --since='3 days ago' <b>&lt;11&gt;</b>
-$ git log v2.43.. curses/ <b>&lt;12&gt;</b></tt></pre>
-</div></div>
-<div class="colist arabic"><ol>
-<li>
-<p>
-create a new topic branch.
-</p>
-</li>
-<li>
-<p>
-revert your botched changes in <tt>curses/ux_audio_oss.c</tt>.
-</p>
-</li>
-<li>
-<p>
-you need to tell Git if you added a new file; removal and
-modification will be caught if you do <tt>git commit -a</tt> later.
-</p>
-</li>
-<li>
-<p>
-to see what changes you are committing.
-</p>
-</li>
-<li>
-<p>
-commit everything as you have tested, with your sign-off.
-</p>
-</li>
-<li>
-<p>
-take the last commit back, keeping what is in the working tree.
-</p>
-</li>
-<li>
-<p>
-look at the changes since the premature commit we took back.
-</p>
-</li>
-<li>
-<p>
-redo the commit undone in the previous step, using the message
-you originally wrote.
-</p>
-</li>
-<li>
-<p>
-switch to the master branch.
-</p>
-</li>
-<li>
-<p>
-merge a topic branch into your master branch.
-</p>
-</li>
-<li>
-<p>
-review commit logs; other forms to limit output can be
-combined and include <tt>--max-count=10</tt> (show 10 commits),
-<tt>--until=2005-12-10</tt>, etc.
-</p>
-</li>
-<li>
-<p>
-view only the changes that touch what&#8217;s in <tt>curses/</tt>
-directory, since <tt>v2.43</tt> tag.
-</p>
-</li>
-</ol></div>
-</dd>
-</dl></div>
-</div>
-</div>
-</div>
-<div class="sect1">
-<h2 id="_individual_developer_participant_a_id_individual_developer_participant_a">Individual Developer (Participant)<a id="Individual Developer (Participant)"></a></h2>
-<div class="sectionbody">
-<div class="paragraph"><p>A developer working as a participant in a group project needs to
-learn how to communicate with others, and uses these commands in
-addition to the ones needed by a standalone developer.</p></div>
-<div class="ulist"><ul>
-<li>
-<p>
-<a href="git-clone.html">git-clone(1)</a> from the upstream to prime your local
- repository.
-</p>
-</li>
-<li>
-<p>
-<a href="git-pull.html">git-pull(1)</a> and <a href="git-fetch.html">git-fetch(1)</a> from "origin"
- to keep up-to-date with the upstream.
-</p>
-</li>
-<li>
-<p>
-<a href="git-push.html">git-push(1)</a> to shared repository, if you adopt CVS
- style shared repository workflow.
-</p>
-</li>
-<li>
-<p>
-<a href="git-format-patch.html">git-format-patch(1)</a> to prepare e-mail submission, if
- you adopt Linux kernel-style public forum workflow.
-</p>
-</li>
-</ul></div>
-<div class="sect2">
-<h3 id="_examples_2">Examples</h3>
-<div class="dlist"><dl>
-<dt class="hdlist1">
-Clone the upstream and work on it. Feed changes to upstream.
-</dt>
-<dd>
-<div class="listingblock">
-<div class="content">
-<pre><tt>$ git clone git://git.kernel.org/pub/scm/.../torvalds/linux-2.6 my2.6
-$ cd my2.6
-$ edit/compile/test; git commit -a -s <b>&lt;1&gt;</b>
-$ git format-patch origin <b>&lt;2&gt;</b>
-$ git pull <b>&lt;3&gt;</b>
-$ git log -p ORIG_HEAD.. arch/i386 include/asm-i386 <b>&lt;4&gt;</b>
-$ git pull git://git.kernel.org/pub/.../jgarzik/libata-dev.git ALL <b>&lt;5&gt;</b>
-$ git reset --hard ORIG_HEAD <b>&lt;6&gt;</b>
-$ git gc <b>&lt;7&gt;</b>
-$ git fetch --tags <b>&lt;8&gt;</b></tt></pre>
-</div></div>
-<div class="colist arabic"><ol>
-<li>
-<p>
-repeat as needed.
-</p>
-</li>
-<li>
-<p>
-extract patches from your branch for e-mail submission.
-</p>
-</li>
-<li>
-<p>
-<tt>git pull</tt> fetches from <tt>origin</tt> by default and merges into the
-current branch.
-</p>
-</li>
-<li>
-<p>
-immediately after pulling, look at the changes done upstream
-since last time we checked, only in the
-area we are interested in.
-</p>
-</li>
-<li>
-<p>
-fetch from a specific branch from a specific repository and merge.
-</p>
-</li>
-<li>
-<p>
-revert the pull.
-</p>
-</li>
-<li>
-<p>
-garbage collect leftover objects from reverted pull.
-</p>
-</li>
-<li>
-<p>
-from time to time, obtain official tags from the <tt>origin</tt>
-and store them under <tt>.git/refs/tags/</tt>.
-</p>
-</li>
-</ol></div>
-</dd>
-<dt class="hdlist1">
-Push into another repository.
-</dt>
-<dd>
-<div class="listingblock">
-<div class="content">
-<pre><tt>satellite$ git clone mothership:frotz frotz <b>&lt;1&gt;</b>
-satellite$ cd frotz
-satellite$ git config --get-regexp '^(remote|branch)\.' <b>&lt;2&gt;</b>
-remote.origin.url mothership:frotz
-remote.origin.fetch refs/heads/*:refs/remotes/origin/*
-branch.master.remote origin
-branch.master.merge refs/heads/master
-satellite$ git config remote.origin.push \
- master:refs/remotes/satellite/master <b>&lt;3&gt;</b>
-satellite$ edit/compile/test/commit
-satellite$ git push origin <b>&lt;4&gt;</b>
-
-mothership$ cd frotz
-mothership$ git checkout master
-mothership$ git merge satellite/master <b>&lt;5&gt;</b></tt></pre>
-</div></div>
-<div class="colist arabic"><ol>
-<li>
-<p>
-mothership machine has a frotz repository under your home
-directory; clone from it to start a repository on the satellite
-machine.
-</p>
-</li>
-<li>
-<p>
-clone sets these configuration variables by default.
-It arranges <tt>git pull</tt> to fetch and store the branches of mothership
-machine to local <tt>remotes/origin/*</tt> remote-tracking branches.
-</p>
-</li>
-<li>
-<p>
-arrange <tt>git push</tt> to push local <tt>master</tt> branch to
-<tt>remotes/satellite/master</tt> branch of the mothership machine.
-</p>
-</li>
-<li>
-<p>
-push will stash our work away on <tt>remotes/satellite/master</tt>
-remote-tracking branch on the mothership machine. You could use this
-as a back-up method.
-</p>
-</li>
-<li>
-<p>
-on mothership machine, merge the work done on the satellite
-machine into the master branch.
-</p>
-</li>
-</ol></div>
-</dd>
-<dt class="hdlist1">
-Branch off of a specific tag.
-</dt>
-<dd>
-<div class="listingblock">
-<div class="content">
-<pre><tt>$ git checkout -b private2.6.14 v2.6.14 <b>&lt;1&gt;</b>
-$ edit/compile/test; git commit -a
-$ git checkout master
-$ git format-patch -k -m --stdout v2.6.14..private2.6.14 |
- git am -3 -k <b>&lt;2&gt;</b></tt></pre>
-</div></div>
-<div class="colist arabic"><ol>
-<li>
-<p>
-create a private branch based on a well known (but somewhat behind)
-tag.
-</p>
-</li>
-<li>
-<p>
-forward port all changes in <tt>private2.6.14</tt> branch to <tt>master</tt> branch
-without a formal "merging".
-</p>
-</li>
-</ol></div>
-</dd>
-</dl></div>
-</div>
-</div>
-</div>
-<div class="sect1">
-<h2 id="_integrator_a_id_integrator_a">Integrator<a id="Integrator"></a></h2>
-<div class="sectionbody">
-<div class="paragraph"><p>A fairly central person acting as the integrator in a group
-project receives changes made by others, reviews and integrates
-them and publishes the result for others to use, using these
-commands in addition to the ones needed by participants.</p></div>
-<div class="ulist"><ul>
-<li>
-<p>
-<a href="git-am.html">git-am(1)</a> to apply patches e-mailed in from your
- contributors.
-</p>
-</li>
-<li>
-<p>
-<a href="git-pull.html">git-pull(1)</a> to merge from your trusted lieutenants.
-</p>
-</li>
-<li>
-<p>
-<a href="git-format-patch.html">git-format-patch(1)</a> to prepare and send suggested
- alternative to contributors.
-</p>
-</li>
-<li>
-<p>
-<a href="git-revert.html">git-revert(1)</a> to undo botched commits.
-</p>
-</li>
-<li>
-<p>
-<a href="git-push.html">git-push(1)</a> to publish the bleeding edge.
-</p>
-</li>
-</ul></div>
-<div class="sect2">
-<h3 id="_examples_3">Examples</h3>
-<div class="dlist"><dl>
-<dt class="hdlist1">
-My typical Git day.
-</dt>
-<dd>
-<div class="listingblock">
-<div class="content">
-<pre><tt>$ git status <b>&lt;1&gt;</b>
-$ git show-branch <b>&lt;2&gt;</b>
-$ mailx <b>&lt;3&gt;</b>
-&amp; s 2 3 4 5 ./+to-apply
-&amp; s 7 8 ./+hold-linus
-&amp; q
-$ git checkout -b topic/one master
-$ git am -3 -i -s -u ./+to-apply <b>&lt;4&gt;</b>
-$ compile/test
-$ git checkout -b hold/linus &amp;&amp; git am -3 -i -s -u ./+hold-linus <b>&lt;5&gt;</b>
-$ git checkout topic/one &amp;&amp; git rebase master <b>&lt;6&gt;</b>
-$ git checkout pu &amp;&amp; git reset --hard next <b>&lt;7&gt;</b>
-$ git merge topic/one topic/two &amp;&amp; git merge hold/linus <b>&lt;8&gt;</b>
-$ git checkout maint
-$ git cherry-pick master~4 <b>&lt;9&gt;</b>
-$ compile/test
-$ git tag -s -m "GIT 0.99.9x" v0.99.9x <b>&lt;10&gt;</b>
-$ git fetch ko &amp;&amp; git show-branch master maint 'tags/ko-*' <b>&lt;11&gt;</b>
-$ git push ko <b>&lt;12&gt;</b>
-$ git push ko v0.99.9x <b>&lt;13&gt;</b></tt></pre>
-</div></div>
-<div class="colist arabic"><ol>
-<li>
-<p>
-see what I was in the middle of doing, if any.
-</p>
-</li>
-<li>
-<p>
-see what topic branches I have and think about how ready
-they are.
-</p>
-</li>
-<li>
-<p>
-read mails, save ones that are applicable, and save others
-that are not quite ready.
-</p>
-</li>
-<li>
-<p>
-apply them, interactively, with my sign-offs.
-</p>
-</li>
-<li>
-<p>
-create topic branch as needed and apply, again with my
-sign-offs.
-</p>
-</li>
-<li>
-<p>
-rebase internal topic branch that has not been merged to the
-master or exposed as a part of a stable branch.
-</p>
-</li>
-<li>
-<p>
-restart <tt>pu</tt> every time from the next.
-</p>
-</li>
-<li>
-<p>
-and bundle topic branches still cooking.
-</p>
-</li>
-<li>
-<p>
-backport a critical fix.
-</p>
-</li>
-<li>
-<p>
-create a signed tag.
-</p>
-</li>
-<li>
-<p>
-make sure I did not accidentally rewind master beyond what I
-already pushed out. <tt>ko</tt> shorthand points at the repository I have
-at kernel.org, and looks like this:
-</p>
-<div class="listingblock">
-<div class="content">
-<pre><tt>$ cat .git/remotes/ko
-URL: kernel.org:/pub/scm/git/git.git
-Pull: master:refs/tags/ko-master
-Pull: next:refs/tags/ko-next
-Pull: maint:refs/tags/ko-maint
-Push: master
-Push: next
-Push: +pu
-Push: maint</tt></pre>
-</div></div>
-<div class="paragraph"><p>In the output from <tt>git show-branch</tt>, <tt>master</tt> should have
-everything <tt>ko-master</tt> has, and <tt>next</tt> should have
-everything <tt>ko-next</tt> has.</p></div>
-</li>
-<li>
-<p>
-push out the bleeding edge.
-</p>
-</li>
-<li>
-<p>
-push the tag out, too.
-</p>
-</li>
-</ol></div>
-</dd>
-</dl></div>
-</div>
-</div>
-</div>
-<div class="sect1">
-<h2 id="_repository_administration_a_id_repository_administration_a">Repository Administration<a id="Repository Administration"></a></h2>
-<div class="sectionbody">
-<div class="paragraph"><p>A repository administrator uses the following tools to set up
-and maintain access to the repository by developers.</p></div>
-<div class="ulist"><ul>
-<li>
-<p>
-<a href="git-daemon.html">git-daemon(1)</a> to allow anonymous download from
- repository.
-</p>
-</li>
-<li>
-<p>
-<a href="git-shell.html">git-shell(1)</a> can be used as a <em>restricted login shell</em>
- for shared central repository users.
-</p>
-</li>
-</ul></div>
-<div class="paragraph"><p><a href="howto/update-hook-example.html">update hook howto</a> has a good
-example of managing a shared central repository.</p></div>
-<div class="sect2">
-<h3 id="_examples_4">Examples</h3>
-<div class="dlist"><dl>
-<dt class="hdlist1">
-We assume the following in /etc/services
-</dt>
-<dd>
-<div class="listingblock">
-<div class="content">
-<pre><tt>$ grep 9418 /etc/services
-git 9418/tcp # Git Version Control System</tt></pre>
-</div></div>
-</dd>
-<dt class="hdlist1">
-Run git-daemon to serve /pub/scm from inetd.
-</dt>
-<dd>
-<div class="listingblock">
-<div class="content">
-<pre><tt>$ grep git /etc/inetd.conf
-git stream tcp nowait nobody \
- /usr/bin/git-daemon git-daemon --inetd --export-all /pub/scm</tt></pre>
-</div></div>
-<div class="paragraph"><p>The actual configuration line should be on one line.</p></div>
-</dd>
-<dt class="hdlist1">
-Run git-daemon to serve /pub/scm from xinetd.
-</dt>
-<dd>
-<div class="listingblock">
-<div class="content">
-<pre><tt>$ cat /etc/xinetd.d/git-daemon
-# default: off
-# description: The Git server offers access to Git repositories
-service git
-{
- disable = no
- type = UNLISTED
- port = 9418
- socket_type = stream
- wait = no
- user = nobody
- server = /usr/bin/git-daemon
- server_args = --inetd --export-all --base-path=/pub/scm
- log_on_failure += USERID
-}</tt></pre>
-</div></div>
-<div class="paragraph"><p>Check your xinetd(8) documentation and setup, this is from a Fedora system.
-Others might be different.</p></div>
-</dd>
-<dt class="hdlist1">
-Give push/pull only access to developers.
-</dt>
-<dd>
-<div class="listingblock">
-<div class="content">
-<pre><tt>$ grep git /etc/passwd <b>&lt;1&gt;</b>
-alice:x:1000:1000::/home/alice:/usr/bin/git-shell
-bob:x:1001:1001::/home/bob:/usr/bin/git-shell
-cindy:x:1002:1002::/home/cindy:/usr/bin/git-shell
-david:x:1003:1003::/home/david:/usr/bin/git-shell
-$ grep git /etc/shells <b>&lt;2&gt;</b>
-/usr/bin/git-shell</tt></pre>
-</div></div>
-<div class="colist arabic"><ol>
-<li>
-<p>
-log-in shell is set to /usr/bin/git-shell, which does not
-allow anything but <tt>git push</tt> and <tt>git pull</tt>. The users should
-get an ssh access to the machine.
-</p>
-</li>
-<li>
-<p>
-in many distributions /etc/shells needs to list what is used
-as the login shell.
-</p>
-</li>
-</ol></div>
-</dd>
-<dt class="hdlist1">
-CVS-style shared repository.
-</dt>
-<dd>
-<div class="listingblock">
-<div class="content">
-<pre><tt>$ grep git /etc/group <b>&lt;1&gt;</b>
-git:x:9418:alice,bob,cindy,david
-$ cd /home/devo.git
-$ ls -l <b>&lt;2&gt;</b>
- lrwxrwxrwx 1 david git 17 Dec 4 22:40 HEAD -&gt; refs/heads/master
- drwxrwsr-x 2 david git 4096 Dec 4 22:40 branches
- -rw-rw-r-- 1 david git 84 Dec 4 22:40 config
- -rw-rw-r-- 1 david git 58 Dec 4 22:40 description
- drwxrwsr-x 2 david git 4096 Dec 4 22:40 hooks
- -rw-rw-r-- 1 david git 37504 Dec 4 22:40 index
- drwxrwsr-x 2 david git 4096 Dec 4 22:40 info
- drwxrwsr-x 4 david git 4096 Dec 4 22:40 objects
- drwxrwsr-x 4 david git 4096 Nov 7 14:58 refs
- drwxrwsr-x 2 david git 4096 Dec 4 22:40 remotes
-$ ls -l hooks/update <b>&lt;3&gt;</b>
- -r-xr-xr-x 1 david git 3536 Dec 4 22:40 update
-$ cat info/allowed-users <b>&lt;4&gt;</b>
-refs/heads/master alice\|cindy
-refs/heads/doc-update bob
-refs/tags/v[0-9]* david</tt></pre>
-</div></div>
-<div class="colist arabic"><ol>
-<li>
-<p>
-place the developers into the same git group.
-</p>
-</li>
-<li>
-<p>
-and make the shared repository writable by the group.
-</p>
-</li>
-<li>
-<p>
-use update-hook example by Carl from Documentation/howto/
-for branch policy control.
-</p>
-</li>
-<li>
-<p>
-alice and cindy can push into master, only bob can push into doc-update.
-david is the release manager and is the only person who can
-create and push version tags.
-</p>
-</li>
-</ol></div>
-</dd>
-<dt class="hdlist1">
-HTTP server to support dumb protocol transfer.
-</dt>
-<dd>
-<div class="listingblock">
-<div class="content">
-<pre><tt>dev$ git update-server-info <b>&lt;1&gt;</b>
-dev$ ftp user@isp.example.com <b>&lt;2&gt;</b>
-ftp&gt; cp -r .git /home/user/myproject.git</tt></pre>
-</div></div>
-<div class="colist arabic"><ol>
-<li>
-<p>
-make sure your info/refs and objects/info/packs are up-to-date
-</p>
-</li>
-<li>
-<p>
-upload to public HTTP server hosted by your ISP.
-</p>
-</li>
-</ol></div>
-</dd>
-</dl></div>
-</div>
+<div class="paragraph"><p>This document has been moved to <a href="giteveryday.html">giteveryday(1)</a>.</p></div>
+<div class="paragraph"><p>Please let the owners of the referring site know so that they can update the
+link you clicked to get here.</p></div>
+<div class="paragraph"><p>Thanks.</p></div>
</div>
</div>
</div>
<div id="footnotes"><hr /></div>
<div id="footer">
<div id="footer-text">
-Last updated 2014-04-08 12:47:26 PDT
+Last updated 2014-10-16 14:29:57 PDT
</div>
</div>
</body>