summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2007-01-17Documentation/git-parse-remote.txt: we deal with config vars as wellLibravatar Junio C Hamano1-2/+4
... but we never documented it. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-17Documentation: m can be relative in "git-blame -Ln,m"Libravatar Junio C Hamano1-1/+4
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-17Documentation: suggest corresponding Porcelain-level in plumbing docs.Libravatar Junio C Hamano5-1/+13
Instead of keeping the confused end user reading low-level documentation, suggest the higher level commands that implement what the user may want to do using them upfront. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-17Documentation/git-resolve: deprecated.Libravatar Junio C Hamano1-0/+2
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-17sanitize content of README fileLibravatar Nicolas Pitre4-582/+618
Current README content is way too esoteric for someone looking at GIT for the first time. Instead it should provide a quick summary of what GIT is with a few pointers to other resources. The bulk of the previous README content is moved to Documentation/core-intro.txt. Signed-off-by: Nicolas Pitre <nico@cam.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-17git-format-patch: do not crash with format.headers without value.Libravatar Junio C Hamano1-1/+5
An incorrect config file can say: [format] headers and crash the parsing. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-17Introduce 'git-format-patch --suffix=.patch'Libravatar Junio C Hamano2-4/+32
The default can also be changed with "format.suffix" configuration. Leaving it empty would not add any suffix. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-17Documentation/glossary.txt: describe remotes/ tracking and packed-refsLibravatar Junio C Hamano1-0/+9
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-17Documentation/glossary.txt: unpacked objects are loose.Libravatar Junio C Hamano1-1/+1
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-17Documentation: describe shallow repositoryLibravatar Junio C Hamano2-0/+20
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-17Make a short-and-sweet "git-add -i" synonym for "git-add --interactive"Libravatar Junio C Hamano2-4/+5
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-17Documentation: detached HEADLibravatar Junio C Hamano2-2/+58
Add discussion section to git-checkout documentation and mention detached HEAD in repository-layout document. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-17Documentation: a few spelling fixesLibravatar René Scharfe12-15/+15
Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-17Documentation/git-sh-setup.txt: programmer's docsLibravatar Junio C Hamano1-8/+45
Clarify that this is not meant for end users, and list what shell functions are defined. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-17Documentation/git-whatchanged.txt: show -<n> instead of --max-count.Libravatar Junio C Hamano1-1/+1
... to match the change we did earlier to git-log documentation. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-17Documentation/git-status.txt: mention color configurationLibravatar Junio C Hamano1-0/+9
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-17Documentation/git-tar-tree.txt: default umask is now 002Libravatar Junio C Hamano1-1/+1
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-17Documentation/git-tools.txt: mention tig and refer to wikiLibravatar Junio C Hamano1-2/+12
In general list at Wiki seems to be maintained a lot better than this list. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-17Documentation/git-tag: the command can be used to also verify a tag.Libravatar Junio C Hamano2-2/+2
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-17Documentation/SubmittingPatches: Gnus tipsLibravatar Junio C Hamano1-1/+19
Also warn about format=flowed (aka 'flawed'). Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-16git-commit: document log message formatting conventionLibravatar Junio C Hamano1-0/+6
Take it from the tutorial, since not everybody necessarily reads it. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-16cache.h; fix a couple of prototypesLibravatar Chris Wedgwood1-2/+2
Trivial patch. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-16Document where configuration files are in config.txtLibravatar Junio C Hamano1-1/+6
Talking about what the files contain without talking about where they are does not help new users. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-16Use merge-recursive in git-checkout -m (branch switching)Libravatar Junio C Hamano2-10/+36
This allows "git checkout -m <other-branch>" to notice renames and carry local changes in the working tree forward. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-16git-commit documentation: remove comment on unfixed git-rmLibravatar Junio C Hamano1-5/+0
... which was fixed since then. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-16tutorial: shorthand for remotes but show distributed nature of gitLibravatar Junio C Hamano1-19/+24
* Promiscous pull shows the distributed nature of git better. * Add a new step after that to teach "remote add". * Highlight that with the shorthand defined you will get remote tracking branches for free. * Fix Alice's workflow. Signed-off-by: Santi Béjar <sbejar@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-16tutorial: Use only separate layoutLibravatar Santi Béjar1-13/+13
Then the newbies only have to understand one layout. Signed-off-by: Santi Béjar <sbejar@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-16Fix spurious compile errorLibravatar Johannes Schindelin1-0/+4
From time to time, I would get this error: [...] sed: -e expression #8, char 41: Unterminated `s' command make: *** [git-add--interactive] Error 1 Turns out that the function WriteMakefile() called in Makefile.PL outputs the message "Writing perl.mak for Git" to stdout! Thus, the output of "make -C perl -s --no-print-directory instlibdir" would be prefixed by that message whenever Makefile.PL was newer than perl.mak. This is fixed by redirecting stdout to stderr in Makefile.PL. Signed-off-by: Johannes E. Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-16git-rm documentation: remove broken behaviour from the example.Libravatar Junio C Hamano2-9/+5
The example section were talking about the old broken default behaviour. Correct it. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-16git-push documentation: remaining bitsLibravatar Junio C Hamano1-1/+13
Mention --thin, --no-thin, --repo and -v. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-16document --exec for git-pushLibravatar Uwe Kleine-K,Av(Bnig1-1/+7
The text is just copied from git-send-pack.txt. Signed-off-by: Uwe Kleine-K,Av(Bnig <zeisberg@informatik.uni-freiburg.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-15git-svn: print and flush authentication prompts to STDERRLibravatar Eric Wong1-15/+22
People that redirect STDOUT output should always see STDERR prompts interactively. STDERR should always be flushed without buffering, so they should always show up. If that is unset, we still explicitly flush by calling STDERR->flush. The svn command-line client prompts to STDERR, too. Signed-off-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-15Solaris 5.8 returns ENOTDIR for inappropriate renames.Libravatar Jason Riedy1-1/+6
The reflog code clears empty directories when rename returns either EISDIR or ENOTDIR. Seems to be the only place. Signed-off-by: Jason Riedy <ejr@cs.berkeley.edu> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-15Replace "echo -n" with printf in shell scripts.Libravatar Jason Riedy6-7/+7
Not all echos know -n. This was causing a test failure in t5401-update-hooks.sh, but not t3800-mktag.sh for some reason. Signed-off-by: Jason Riedy <ejr@cs.berkeley.edu> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-15Set _ALL_SOURCE for AIX, but avoid its struct list.Libravatar Jason Riedy1-2/+5
AIX 5.3 seems to need _ALL_SOURCE for struct addrinfo, but that introduces a struct list in grp.h. Signed-off-by: Jason Riedy <ejr@cs.berkeley.edu> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-15Start all test scripts with /bin/sh.Libravatar Jason Riedy3-1/+3
My bash refused to run the two scripts missing a #!, and it's better to use the same line for all the scripts. Signed-off-by: Jason Riedy <ejr@cs.berkeley.edu> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-15git-pull: disallow implicit merging to detached HEADLibravatar Jeff King2-2/+15
Instead, we complain to the user and suggest that they explicitly specify the remote and branch. We depend on the exit status of git-symbolic-ref, so let's go ahead and document that. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-15Fix git-fetch while on detached HEAD not to give needlessly alarming errorsLibravatar Junio C Hamano3-8/+40
When we are on a detached HEAD, there is no current branch. There is no reason to leak the error messages to the end user since this is a situation we expect to see. This adds -q option to git-symbolic-ref to exit without issuing an error message if the given name is not a symbolic ref. By the way, with or without this patch, there currently is no good way to tell failure modes between "git symbolic-ref HAED" and "git symbolic-ref HEAD". Both says "is not a symbolic ref". We may want to do something about it. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-15git reflog expire: document --stale-fix option.Libravatar Junio C Hamano2-2/+2
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-14Merge git://git.kernel.org/pub/scm/gitk/gitkLibravatar Junio C Hamano1-1/+2
* git://git.kernel.org/pub/scm/gitk/gitk: [PATCH] Make gitk work when launched in a subdirectory [PATCH] gitk: add current directory to main window title
2007-01-14Use nice names in conflict markers during cherry-pick/revert.Libravatar Shawn O. Pearce1-0/+6
Always call the current HEAD 'HEAD', and name the patch being cherry-picked or reverted by its oneline subject rather than its SHA1. This matches git am's behavior and is done because users most commonly are cherry-picking by SHA1 rather than by ref name. Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-14Use merge-recursive in git-revert/git-cherry-pickLibravatar Junio C Hamano2-17/+74
This makes revert and cherry-pick to use merge-recursive, to allow them to notice renames. A pair of test scripts demonstrate that an old change before a rename happened can be applied (reverted) after a rename with cherry-pick (with revert). Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-14Documentation: merge-output is not too verbose now.Libravatar Junio C Hamano2-11/+2
We've squelched output from merge-recursive, and git-merge when used with recursive does not attempt the trivial one first anymore, so there won't be "Trying ... Nope." messages now. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-14Remove hash in git-describe in favor of util slot.Libravatar Shawn O. Pearce1-64/+12
Currently we don't use the util field of struct commit but we want fast access to the highest priority name that references any given commit object during our matching loop. A really simple approach is to just store the name directly in the util field. Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-14Correct priority of lightweight tags in git-describe.Libravatar Shawn O. Pearce1-12/+25
We really want to always favor an annotated tag over a lightweight tag when describing a commit. Unfortunately git-describe wasn't doing this as it was favoring the depth attribute of a possible_tag over the priority. Now priority is the highest sort and we only consider a lightweight tag if no annotated tags were identified. Rather than searching for the minimum tag using a simple loop we now sort them using a stable sort algorithm, this way the possible tags display in order if --debug gets used. The stable sort helps to preseve the inherit topology/date order that we obtain during our search loop. This fix allows the tests in t6120-describe.sh to pass. Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-14Add describe test.Libravatar Junio C Hamano1-0/+97
... with help from Shawn. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-14Improve git-describe performance by reducing revision listing.Libravatar Shawn O. Pearce2-49/+106
My prior version of git-describe ran very slowly on even reasonably sized projects like git.git and linux.git as it tended to identify a large number of possible tags and then needed to generate the revision list for each of those tags to sort them and select the best tag to describe the input commit. All we really need is the number of commits in the input revision which are not in the tag. We can generate these counts during the revision walking and tag matching loop by assigning a color to each tag and coloring the commits as we walk them. This limits us to identifying no more than 26 possible tags, as there is limited space available within the flags field of struct commit. The limitation of 26 possible tags is hopefully not going to be a problem in real usage, as most projects won't create 26 maintenance releases and merge them back into a development trunk after the development trunk was tagged with a release candidate tag. If that does occur git-describe will start to revert to its old behavior of using the newer maintenance release tag to describe the development trunk, rather than the development trunk's own tag. The suggested workaround would be to retag the development trunk's tip. However since even 26 possible tags can take a while to generate a description for on some projects I'm defaulting the limit to 10 but offering the user --candidates to increase the number of possible matches if they need a more accurate result. I specifically chose 10 for the default as it seems unlikely projects will have more than 10 maintenance releases merged into a development trunk before retagging the development trunk, and it seems to perform about the same on linux.git as v1.4.4.4 git-describe. A large amount of debugging information was also added during the development of this change, so I've left it in to be toggled on with --debug. It may be useful to the end user to help them understand why git-describe took one particular tag over another. Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-14Use binary searching on large buckets in git-describe.Libravatar Shawn O. Pearce1-8/+21
If a project has a really huge number of tags (such as several thousand tags) then we are likely to have nearly a hundred tags in some buckets. Scanning those buckets as linked lists could take a large amount of time if done repeatedly during history traversal. Since we are searching for a unique commit SHA1 we can sort all tags by commit SHA1 and perform a binary search within the bucket. Once we identify a particular tag as matching this commit we walk backwards within the bucket matches to make sure we pick up the highest priority tag for that commit, as the binary search may have landed us in the middle of a set of tags which point at the same commit. Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-14Hash tags by commit SHA1 in git-describe.Libravatar Shawn O. Pearce1-12/+17
If a project has a very large number of tags then git-describe will spend a good part of its time looping over the tags testing them one at a time to determine if it matches a given commit. For 10 tags this is not a big deal, but for hundreds of tags the time could become considerable if we don't find an exact match for the input commit and we need to walk back along the history chain. Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-14Always perfer annotated tags in git-describe.Libravatar Shawn O. Pearce1-11/+13
Several people have suggested that its always better to describe a commit using an annotated tag, and to only use a lightweight tag if absolutely no annotated tag matches the input commit. Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <junkio@cox.net>