summaryrefslogtreecommitdiff
path: root/Documentation
Commit message (Collapse)AuthorAgeFilesLines
* Fix multi-paragraph list items in OPTIONS sectionFrancis Daly2006-03-202-23/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch makes the html docs right, makes the asciidoc docs a bit odd but consistent with what is there already, and makes the manpages look OK using docbook-xsl 1.68, but miss a paragraph separator when using 1.69. For the manpages, current is like -A <author_file> Read a file with lines on the form username = User's Full Name <email@addr.es> and use "User's Full Name <email@addr.es>" as the GIT With this patch, docbook-xsl v1.68 looks like -A <author_file> Read a file with lines on the form username = User's Full Name <email@addr.es> and use "User's Full Name <email@addr.es>" as the GIT author and while docbook-xsl v1.69 becomes -A <author_file> Read a file with lines on the form username = User's Full Name <email@addr.es> and use "User's Full Name <email@addr.es>" as the GIT author and The extra indentation is to keep the v1.69 manpage looking sane.
* Rewrite synopsis to clarify the two primary uses of git-checkout.Jon Loeliger2006-03-171-10/+13
| | | | | | | Fix a few typo/grammar problems. Signed-off-by: Jon Loeliger <jdl@jdl.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* Fix minor typo.Jon Loeliger2006-03-171-1/+1
| | | | | Signed-off-by: Jon Loeliger <jdl@jdl.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* Reference git-commit-tree for env vars.Jon Loeliger2006-03-171-0/+4
| | | | | Signed-off-by: Jon Loeliger <jdl@jdl.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* Clarify git-rebase example commands.Jon Loeliger2006-03-171-3/+3
| | | | | Signed-off-by: Jon Loeliger <jdl@jdl.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* Document the default source of template files.Jon Loeliger2006-03-171-5/+13
| | | | | | | Also explain a bit more about how the template option works. Signed-off-by: Jon Loeliger <jdl@jdl.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* Call out the two different uses of git-branch and fix a typo.Jon Loeliger2006-03-171-3/+7
| | | | | Signed-off-by: Jon Loeliger <jdl@jdl.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* Add git-show referenceJon Loeliger2006-03-171-0/+3
| | | | | Signed-off-by: Jon Loeliger <jdl@jdl.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* Merge branch 'jc/fsck'Junio C Hamano2006-03-131-11/+4
|\ | | | | | | | | * jc/fsck: fsck-objects: Remove --standalone
| * fsck-objects: Remove --standaloneJunio C Hamano2006-03-091-11/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The fsck-objects command (back then it was called fsck-cache) used to complain if objects referred to by files in .git/refs/ or objects stored in files under .git/objects/??/ were not found as stand-alone SHA1 files (i.e. found in alternate object pools or packed archives stored under .git/objects/pack). Back then, packs and alternates were new curiosity and having everything as loose objects were the norm. When we adjusted the behaviour of fsck-cache to consider objects found in packs are OK, we introduced the --standalone flag as a backward compatibility measure. It still correctly checks if your repository is complete and consists only of loose objects, so in that sense it is doing the "right" thing, but checking that is pointless these days. This commit removes --standalone flag. See also: 23676d407c63a6f67f8ce3ff192199bda03e6a03 8a498a05c3c6b2f53db669b24f36257ab213eb4c Signed-off-by: Junio C Hamano <junkio@cox.net>
* | Describe how to add extra mail header lines in mail generated by ↵Mike McCormack2006-03-091-0/+9
| | | | | | | | git-format-patch.
* | Document the --attach flag.Mike McCormack2006-03-091-1/+4
|/
* Nicer output from 'git'Fredrik Kuivinen2006-03-091-5/+6
| | | | | | | [jc: with suggestions by Jan-Benedict Glaw] Signed-off-by: Fredrik Kuivinen <freku045@student.liu.se> Signed-off-by: Junio C Hamano <junkio@cox.net>
* Remove trailing dot after short descriptionFredrik Kuivinen2006-03-0953-53/+53
| | | | | Signed-off-by: Fredrik Kuivinen <freku045@student.liu.se> Signed-off-by: Junio C Hamano <junkio@cox.net>
* Fix some inconsistencies in the docsFredrik Kuivinen2006-03-093-3/+3
| | | | | Signed-off-by: Fredrik Kuivinen <freku045@student.liu.se> Signed-off-by: Junio C Hamano <junkio@cox.net>
* cvsimport: Remove master-updating codeMatthias Urlichs2006-03-071-0/+6
| | | | | | | | The code which tried to update the master branch was somewhat broken. => People should do that manually, with "git merge". Signed-off-by: Matthias Urlichs <smurf@smurf.noris.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
* Merge branch 'sp/checkout'Junio C Hamano2006-03-061-2/+49
|\ | | | | | | | | * sp/checkout: Add --temp and --stage=all options to checkout-index.
| * Add --temp and --stage=all options to checkout-index.Shawn Pearce2006-03-051-2/+49
| | | | | | | | | | | | | | | | | | | | | | | | Sometimes it is convient for a Porcelain to be able to checkout all unmerged files in all stages so that an external merge tool can be executed by the Porcelain or the end-user. Using git-unpack-file on each stage individually incurs a rather high penalty due to the need to fork for each file version obtained. git-checkout-index -a --stage=all will now do the same thing, but faster. Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | Tweak asciidoc output to work with broken docbook-xslFrancis Daly2006-03-051-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | docbook-xsl v1.68 incorrectly converts "<screen>" from docbook to manpage by not rendering it verbatim. v1.69 handles it correctly, but not many current popular distributions ship with it. asciidoc by default converts "listingblock" to "<screen>". This change causes asciidoc in git to convert "listingblock" to "<literallayout>", which both old and new docbook-xsl handle correctly. The difference can be seen in any manpage which includes a multi-line example, such as git-branch. [jc: the original patch was an disaster for html backends, so I made it apply only to docbook backends. ] Signed-off-by: Junio C Hamano <junkio@cox.net>
* | git/Documentation: fix SYNOPSIS style bugsDmitry V. Levin2006-03-058-10/+10
| | | | | | | | | | | | | | This trivial patch fixes SYNOPSIS style bugs. Signed-off-by: Dmitry V. Levin <ldv@altlinux.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | documentation: add 'see also' sections to git-rm and git-addJeff Muizelaar2006-03-052-0/+6
| | | | | | | | | | | | | | Pair up git-add and git-rm by adding a 'see also' section that references the opposite command to each of their documentation files. Signed-off-by: Junio C Hamano <junkio@cox.net>
* | Documentation/Makefile: Some `git-*.txt' files aren't manpages.Mark Wooding2006-03-051-1/+5
| | | | | | | | | | | | | | | | | | In particular, git-tools.txt isn't a manpage, and my Asciidoc gets upset by it. The simplest fix is to Remove articles from the list of manpages the Makefile. Signed-off-by: Mark Wooding <mdw@distorted.org.uk> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | cvsserver: updated documentationMartin Langhoff2006-03-051-25/+60
|/ | | | | | | ... and stripped trailing whitespace to appease the Gods... Signed-off-by: Martin Langhoff <martin@catalyst.net.nz> Signed-off-by: Junio C Hamano <junkio@cox.net>
* cosmetics: change from 'See-Also' to 'See Also'Jeff Muizelaar2006-03-054-4/+4
| | | | | | | Changes the documentation that uses 'See-Also' to the more common 'See Also' form. Signed-off-by: Junio C Hamano <junkio@cox.net>
* Merge part of 'sp/checkout'Junio C Hamano2006-03-041-2/+18
|\
| * Teach git-checkout-index to read filenames from stdin.Shawn Pearce2006-03-011-2/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since git-checkout-index is often used from scripts which may have a stream of filenames they wish to checkout it is more convenient to use --stdin than xargs. On platforms where fork performance is currently sub-optimal and the length of a command line is limited (*cough* Cygwin *cough*) running a single git-checkout-index process for a large number of files beats spawning it multiple times from xargs. File names are still accepted on the command line if --stdin is not supplied. Nothing is performed if no files are supplied on the command line or by stdin. Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | AsciiDoc fix for tutorialFrancis Daly2006-03-041-1/+1
| | | | | | | | | | | | RE \^.+\^ becomes <sup>. Not wanted here Signed-off-by: Junio C Hamano <junkio@cox.net>
* | Merge branch 'lt/rev-list'Junio C Hamano2006-03-041-48/+1
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lt/rev-list: setup_revisions(): handle -n<n> and -<n> internally. git-log (internal): more options. git-log (internal): add approxidate. Rip out merge-order and make "git log <paths>..." work again. Tie it all together: "git log" Introduce trivial new pager.c helper infrastructure git-rev-list libification: rev-list walking Splitting rev-list into revisions lib, end of beginning. rev-list split: minimum fixup. First cut at libifying revlist generation
| * | Rip out merge-order and make "git log <paths>..." work again.Linus Torvalds2006-03-011-48/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Well, assuming breaking --merge-order is fine, here's a patch (on top of the other ones) that makes git log <filename> actually work, as far as I can tell. I didn't add the logic for --before/--after flags, but that should be pretty trivial, and is independent of this anyway. Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | Add a Documentation/git-tools.txtMarco Costalba2006-03-031-0/+97
| | | | | | | | | | | | | | | | | | | | | | | | A brief survey of useful git tools, including third-party and external projects. Signed-off-by: Marco Costalba <mcostalba@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | manpages: insert two missing [verse] markers for multi-line SYNOPSISJonas Fonseca2006-03-022-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Found with: for i in *.txt; do grep -A 2 "SYNOPSIS" "$i" | grep -q "^\[verse\]$" && continue multiline=$(grep -A 3 "SYNOPSIS" "$i" | tail -n 1) test -n "$multiline" && echo "$i: $multiline" done Signed-off-by: Jonas Fonseca <fonseca@diku.dk> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | Documentation: rev-list --objects-edgeJunio C Hamano2006-03-021-1/+9
| | | | | | | | | | | | Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | Documentation: read-tree --aggressiveJunio C Hamano2006-03-021-1/+14
| | | | | | | | | | | | Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | war on whitespaces: documentation.Junio C Hamano2006-03-022-2/+37
| | | | | | | | | | | | | | | | | | | | | We were missing the --whitespace option in the usage string for git-apply and git-am, so this commit adds them. Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | Merge branch 'kh/svnimport'Junio C Hamano2006-03-011-0/+5
|\ \ \ | |_|/ |/| | | | | | | | * kh/svnimport: Save username -> Full Name <email@addr.es> map file
| * | Save username -> Full Name <email@addr.es> map fileKarl Hasselström2006-02-271-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When the user specifies a username -> Full Name <email@addr.es> map file with the -A option, save a copy of that file as $git_dir/svn-authors. When running git-svnimport with an existing GIT directory, use $git_dir/svn-authors (if it exists) unless a file was explicitly specified with -A. Signed-off-by: Karl Hasselström <kha@treskal.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | cvsserver: add notes on how to get a checkout under EclipseMartin Langhoff2006-03-011-0/+24
|/ /
* | Let git-svnimport's author file use same syntax as git-cvsimport'sKarl Hasselström2006-02-271-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | git-cvsimport uses a username => Full Name <email@addr.es> mapping file with this syntax: kha=Karl Hasselström <kha@treskal.com> Since there is no reason to use another format for git-svnimport, use the same format. Signed-off-by: Karl Hasselström <kha@treskal.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | svnimport: Read author names and emails from a fileKarl Hasselström2006-02-261-1/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | Read a file with lines on the form username User's Full Name <email@addres.org> and use "User's Full Name <email@addres.org>" as the GIT author and committer for Subversion commits made by "username". If encountering a commit made by a user not in the list, abort. Signed-off-by: Karl Hasselström <kha@treskal.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | svnimport: Convert the svn:ignore propertyKarl Hasselström2006-02-261-1/+7
| | | | | | | | | | | | | | | | | | | | Put the value of the svn:ignore property in a regular file when converting a Subversion repository to GIT. The Subversion and GIT ignore syntaxes are similar enough that it often just works to set the filename to .gitignore and do nothing else. Signed-off-by: Karl Hasselström <kha@treskal.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | svnimport: Mention -r in usage summaryKarl Hasselström2006-02-261-4/+4
|/ | | | | | | | I added the -r option to git-svnimport some time ago, but forgot to update the usage summary in the documentation. Signed-off-by: Karl Hasselström <kha@treskal.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* Merge branch 'ml/cvs'Junio C Hamano2006-02-221-0/+89
|\ | | | | | | | | * ml/cvs: Introducing git-cvsserver -- a CVS emulator for git.
| * Introducing git-cvsserver -- a CVS emulator for git.Martin Langhoff2006-02-221-0/+89
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git-cvsserver is highly functional. However, not all methods are implemented, and for those methods that are implemented, not all switches are implemented. All the common read operations are implemented, and add/remove/commit are supported. Testing has been done using both the CLI CVS client, and the Eclipse CVS plugin. Most functionality works fine with both of these clients. Currently git-cvsserver only works over SSH connections, see the Documentation for more details on how to configure your client. It does not support pserver for anonymous access but it should not be hard to implement. Anonymous access will need tighter input validation. In our very informal tests, it seems to be significantly faster than a real CVS server. This utility depends on a version of git-cvsannotate that supports -S and on DBD::SQLite. Licensed under GPLv2. Copyright The Open University UK. Authors: Martyn Smith <martyn@catalyst.net.nz> Martin Langhoff <martin@catalyst.net.nz> Signed-off-by: Martin Langhoff <martin@catalyst.net.nz> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | Add new git-rm command with documentationCarl Worth2006-02-221-0/+89
|/ | | | | | | | | | | | | | This adds a git-rm command which provides convenience similar to git-add, (and a bit more since it takes care of the rm as well if given -f). Like git-add, git-rm expands the given path names through git-ls-files. This means it only acts on files listed in the index. And it does act recursively on directories by default, (no -r needed as in the case of rm itself). When it recurses, it does not remove empty directories that are left behind. Signed-off-by: Junio C Hamano <junkio@cox.net>
* Merge branch 'fix'Junio C Hamano2006-02-222-1/+12
|\ | | | | | | | | | | | | * fix: git-push: Update documentation to describe the no-refspec behavior. format-patch: pretty-print timestamp correctly. git-add: Add support for --, documentation, and test.
| * git-push: Update documentation to describe the no-refspec behavior.Carl Worth2006-02-211-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It turns out that the git-push documentation didn't describe what it would do when not given a refspec, (not on the command line, nor in a remotes file). This is fairly important for the user who is trying to understand operations such as: git clone git://something/some/where # hack, hack, hack git push origin I tracked the mystery behavior down to git-send-pack and lifted the relevant portion of its documentation up to git-push, (namely that all refs existing both locally and remotely are updated). Signed-off-by: Carl Worth <cworth@cworth.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
| * git-add: Add support for --, documentation, and test.Carl Worth2006-02-211-1/+6
| | | | | | | | | | | | | | | | | | | | | | This adds support to git-add to allow the common -- to separate command-line options and file names. It adds documentation and a new git-add test case as well. [jc: this should apply to 1.2.X maintenance series, so I reworked git-ls-files --error-unmatch test. ] Signed-off-by: Junio C Hamano <junkio@cox.net>
* | Merge branch 'jc/pack-reuse'Junio C Hamano2006-02-212-2/+29
|\ \ | | | | | | | | | | | | | | | | | | | | | * jc/pack-reuse: pack-objects: avoid delta chains that are too long. git-repack: allow passing a couple of flags to pack-objects. pack-objects: finishing touches. pack-objects: reuse data from existing packs.
| * | git-repack: allow passing a couple of flags to pack-objects.Junio C Hamano2006-02-171-1/+9
| | | | | | | | | | | | | | | | | | | | | A new flag -q makes underlying pack-objects less chatty. A new flag -f forces delta to be recomputed from scratch. Signed-off-by: Junio C Hamano <junkio@cox.net>
| * | pack-objects: finishing touches.Junio C Hamano2006-02-171-1/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This introduces --no-reuse-delta option to disable reusing of existing delta, which is a large part of the optimization introduced by this series. This may become necessary if repeated repacking makes delta chain too long. With this, the output of the command becomes identical to that of the older implementation. But the performance suffers greatly. It still allows reusing non-deltified representations; there is no point uncompressing and recompressing the whole text. It also adds a couple more statistics output, while squelching it under -q flag, which the last round forgot to do. $ time old-git-pack-objects --stdout >/dev/null <RL Generating pack... Done counting 184141 objects. Packing 184141 objects.................... real 12m8.530s user 11m1.450s sys 0m57.920s $ time git-pack-objects --stdout >/dev/null <RL Generating pack... Done counting 184141 objects. Packing 184141 objects..................... Total 184141, written 184141 (delta 138297), reused 178833 (delta 134081) real 0m59.549s user 0m56.670s sys 0m2.400s $ time git-pack-objects --stdout --no-reuse-delta >/dev/null <RL Generating pack... Done counting 184141 objects. Packing 184141 objects..................... Total 184141, written 184141 (delta 134833), reused 47904 (delta 0) real 11m13.830s user 9m45.240s sys 0m44.330s There is one remaining issue when --no-reuse-delta option is not used. It can create delta chains that are deeper than specified. A<--B<--C<--D E F G Suppose we have a delta chain A to D (A is stored in full either in a pack or as a loose object. B is depth1 delta relative to A, C is depth2 delta relative to B...) with loose objects E, F, G. And we are going to pack all of them. B, C and D are left as delta against A, B and C respectively. So A, E, F, and G are examined for deltification, and let's say we decided to keep E expanded, and store the rest as deltas like this: E<--F<--G<--A Oops. We ended up making D a bit too deep, didn't we? B, C and D form a chain on top of A! This is because we did not know what the final depth of A would be, when we checked objects and decided to keep the existing delta. Unfortunately, deferring the decision until just before the deltification is not an option. To be able to make B, C, and D candidates for deltification with the rest, we need to know the type and final unexpanded size of them, but the major part of the optimization comes from the fact that we do not read the delta data to do so -- getting the final size is quite an expensive operation. To prevent this from happening, we should keep A from being deltified. But how would we tell that, cheaply? To do this most precisely, after check_object() runs, each object that is used as the base object of some existing delta needs to be marked with the maximum depth of the objects we decided to keep deltified (in this case, D is depth 3 relative to A, so if no other delta chain that is longer than 3 based on A exists, mark A with 3). Then when attempting to deltify A, we would take that number into account to see if the final delta chain that leads to D becomes too deep. However, this is a bit cumbersome to compute, so we would cheat and reduce the maximum depth for A arbitrarily to depth/4 in this implementation. Signed-off-by: Junio C Hamano <junkio@cox.net>