# Git Howto Index

Here is a collection of mailing list postings made by various people describing how they use Git in their workflow.

- keep-canonical-history-correct by Junio C Hamano <gitster@pobox.com>

This how-to explains a method for keeping a project’s history correct when using git pull.

- maintain-git by Junio C Hamano <gitster@pobox.com>

Imagine that Git development is racing along as usual, when our friendly neighborhood maintainer is struck down by a wayward bus. Out of the hordes of suckers (loyal developers), you have been tricked (chosen) to step up as the new maintainer. This howto will show you "how to" do it.

- new-command by Eric S. Raymond <esr@thyrsus.com>

This is how-to documentation for people who want to add extension commands to Git. It should be read alongside api-builtin.txt.

- rebase-from-internal-branch by Junio C Hamano <gitster@pobox.com>

In this article, JC talks about how he rebases the public "pu" branch using the core Git tools when he updates the "master" branch, and how "rebase" works. Also discussed is how this applies to individual developers who sends patches upstream.

- rebuild-from-update-hook by Junio C Hamano <gitster@pobox.com>

In this how-to article, JC talks about how he uses the post-update hook to automate Git documentation page shown at https://www.kernel.org/pub/software/scm/git/docs/.

- recover-corrupted-blob-object by Linus Torvalds <torvalds@linux-foundation.org>

Some tricks to reconstruct blob objects in order to fix a corrupted repository.

- recover-corrupted-object-harder by Jeff King <peff@peff.net>

Recovering a corrupted object when no good copy is available.

- revert-a-faulty-merge by Linus Torvalds <torvalds@linux-foundation.org>, Junio C Hamano <gitster@pobox.com>

Sometimes a branch that was already merged to the mainline is later found to be faulty. Linus and Junio give guidance on recovering from such a premature merge and continuing development after the offending branch is fixed.

- revert-branch-rebase by Junio C Hamano <gitster@pobox.com>

In this article, JC gives a small real-life example of using git revert command, and using a temporary branch and tag for safety and easier sanity checking.

- separating-topic-branches by Junio C Hamano <gitster@pobox.com>

In this article, JC describes how to separate topic branches.

- setup-git-server-over-http by Rutger Nijlunsing <rutger@nospam.com>

- update-hook-example by Junio C Hamano <gitster@pobox.com> and Carl Baldwin <cnb@fc.hp.com>

An example hooks/update script is presented to implement repository maintenance policies, such as who can push into which branch and who can make a tag.

- use-git-daemon

- using-merge-subtree by Sean <seanlkml@sympatico.ca>

In this article, Sean demonstrates how one can use the subtree merge strategy.

- using-signed-tag-in-pull-request by Junio C Hamano <gitster@pobox.com>

Beginning v1.7.9, a contributor can push a signed tag to her publishing repository and ask her integrator to pull it. This assures the integrator that the pulled history is authentic and allows others to later validate it.