summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2006-08-03Show both blob names from "git diff blob1 blob2"Libravatar Junio C Hamano1-1/+1
Earlier we deliberately showed only blob1's name because showing both names labeled the output as a renaming patch. Now the output routine (namely, diff.c::resolve_rename_copy()) is taught not to use pathname comparison to tell if a filepair is a rename, we can safely do this change. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-08-03diff.c: do not use pathname comparison to tell renamesLibravatar Junio C Hamano3-6/+4
The final output from diff used to compare pathnames between preimage and postimage to tell if the filepair is a rename/copy. By explicitly marking the filepair created by diffcore_rename(), the output routine, resolve_rename_copy(), does not have to do so anymore. This helps feeding a filepair that has different pathnames in one and two elements to the diff machinery (most notably, comparing two blobs). Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-08-03Add a couple of subdirectory tests.Libravatar Junio C Hamano2-0/+136
We still have too few of them, but we have to start from somewhere. The general rule is to make tests easy to debug when run with -v (notice use of seemingly useless echo everywhere in the new tests). Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-08-03read-tree: shadowed variable fix.Libravatar Junio C Hamano1-1/+1
Recent changes to built-ins broke committing from subdirectory, because the unused parameter "prefix" shadowed a global variable. Spotted by Jeff King. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-08-03fixed variable declaration in gitkLibravatar Michael1-1/+1
Signed-off-by: Michael <barra_cuda@katamail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-08-03Fix "git diff blob1 blob2" showing the diff in reverse.Libravatar Junio C Hamano1-4/+1
This was introduced by mistake when revision.c::add_pending_object() was modified to use object-array instead of object-list. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-08-02git-grep: document --and, --or, --not, ( and )Libravatar Matthias Lederhofer1-3/+17
[jc: added an example section.] Signed-off-by: Matthias Lederhofer <matled@gmx.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-08-02use declarations from builtin.h for builtin commandsLibravatar Matthias Kestenholz2-2/+4
Signed-off-by: Matthias Kestenholz <matthias@spinlock.ch> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-08-02Make git-repo-config a builtinLibravatar Matthias Kestenholz4-4/+8
Signed-off-by: Matthias Kestenholz <matthias@spinlock.ch> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-08-02Make git-prune-packed a builtinLibravatar Matthias Kestenholz4-6/+6
Signed-off-by: Matthias Kestenholz <matthias@spinlock.ch> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-08-02git-annotate: remove extraneous debugging lineLibravatar Jeff King1-1/+0
Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-08-02Documentation: convert uses of git-link macro to gitlinkLibravatar Jeff King2-4/+4
There isn't and never was such a macro; all uses are typos. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-08-02git-push: remove obsolete git-push.shLibravatar Jeff King1-87/+0
This was converted to a C builtin over three months ago. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-08-02git-push: allow -f as an alias for --forceLibravatar Jeff King2-3/+3
This was already documented in the options section of the manpage. This patch implements it, adds it to the usage message, and mentions it at the top of the manpage. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-08-02Remove cmd_usage() routine and re-organize the help/usage code.Libravatar Ramsay Allan Jones4-42/+33
The cmd_usage() routine was causing warning messages due to a NULL format parameter being passed in three out of four calls. This is a problem if you want to compile with -Werror. A simple solution is to simply remove the GNU __attribute__ format pragma from the cmd_usage() declaration in the header file. The function interface was somewhat muddled anyway, so re-write the code to finesse the problem. [jc: this incidentally revealed that t9100 test assumed that the output from "git help" to be fixed in stone, but this patch lower-cases "Usage" to "usage". Update the test not to rely on "git help" output.] Signed-off-by: Ramsay Allan Jones <ramsay@ramsay1.demon.co.uk> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-08-02Fix header breakage due to redefining PATH_MAX.Libravatar Ramsay Allan Jones1-4/+1
The header builtin.h was, incorrectly, redefining PATH_MAX which causes a header order dependency in builtin-write-tree.c. The fix is to simply include <limits.h> directly to obtain the correct definition of PATH_MAX. Signed-off-by: Ramsay Allan Jones <ramsay@ramsay1.demon.co.uk> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-08-02Add NO_C99_FORMAT to support older compilers.Libravatar Ramsay Allan Jones3-6/+35
The NO_C99_FORMAT macro allows compilers that lack support for the ll,hh,j,z,t size specifiers (eg. gcc 2.95.2) to adapt the code to avoid runtime errors in the formatted IO functions. Signed-off-by: Ramsay Allan Jones <ramsay@ramsay1.demon.co.uk> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-08-02New tests and en-passant modifications to mktag.Libravatar Ramsay Allan Jones2-17/+245
These changes were originally part of the next patch, but have been split out since they were peripheral to the main purpose of that patch. - update comment describing the signature format to reflect the current code. - remove trailing \n in calls to error(), since a \n is already provided by error(). - remove redundant call to get_sha1_hex(). - call sha1_to_hex(sha1) to convert to ascii, rather than attempting to print the raw sha1. The new tests provide a regression suite to support the modifications to git-mktag in this and the next patch. Signed-off-by: Ramsay Allan Jones <ramsay@ramsay1.demon.co.uk> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-08-02Fix installation of templates on ancient systems.Libravatar Ramsay Allan Jones2-8/+6
Do not use $(call) for 'shell quoting' paths, and pass DESTDIR down to the templates makefile. [jc: we have fixed the main Makefile long time ago, but somehow forgot to apply the same fix to templates Makefile.] Signed-off-by: Ramsay Allan Jones <ramsay@ramsay1.demon.co.uk> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-08-02Fix annotate test script; notice when git-annotate fails.Libravatar Ramsay Allan Jones1-1/+2
The t8001-annotate.sh test claimed all tests pass, when in fact the git-annotate perl script failed to run! (prior to fixing the script to work with perl 5.5). Signed-off-by: Ramsay Allan Jones <ramsay@ramsay1.demon.co.uk> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-08-02Ensure git-clone exits with error if perl script fails.Libravatar Ramsay Allan Jones1-2/+3
This helps tests 5400,5600,5700,5710 "fail correctly" rather than give some false positives. Also ensure cleanup actions in exit trap work correctly even if user has alias rm='rm -i'. Signed-off-by: Ramsay Allan Jones <ramsay@ramsay1.demon.co.uk> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-31Merge branch 'rs/rebase'Libravatar Junio C Hamano1-9/+6
* rs/rebase: rebase: Make the fast-fowarding message more user-friendly by using branch names instead of SHA1 IDs. rebase: Fix the detection of fast-forwarding of the current branch to upstream.
2006-07-31Merge branch 'ml/pager'Libravatar Junio C Hamano7-7/+20
2006-07-31Merge branch 'jc/checkout'Libravatar Junio C Hamano1-0/+4
* jc/checkout: git-checkout: allow "checkout HEAD -- path"
2006-07-31pager: config variable pager.colorLibravatar Matthias Lederhofer5-1/+12
enable/disable colored output when the pager is in use Signed-off-by: Matthias Lederhofer <matled@gmx.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-31Builtins: control the use of pager from the command table.Libravatar Junio C Hamano2-6/+8
This moves the built-in "always-use-pager" logic for log family to the command dispatch table of git wrapper. This makes it easier to change the default use of pager, and has an added benefit that we fork and exec the pager early before packs are mmapped. Pointed out by Juergen Ruehle <j.ruehle@bmiag.de>. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-31Fix up some fallout from "setup_git_directory()" cleanupsLibravatar Linus Torvalds1-8/+7
git-ls-files was broken by the setup_git_directory() calling changes, because I had missed the fact that the "prefix" variable in that file was static to the whole file, and unlike git-ls-tree (where I had fixed it up), it ended up using two different variables with the same name depending on what the scoping happened to be. This fixes it up properly (by just removing the static variable, and passing the automatic one around properly), and git-ls-files should work again. Signed-off-by: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-31Fix double "close()" in ce_compare_dataLibravatar Linus Torvalds1-1/+1
Doing an "strace" on "git diff" shows that we close() a file descriptor twice (getting EBADFD on the second one) when we end up in ce_compare_data if the index does not match the checked-out stat information. The "index_fd()" function will already have closed the fd for us, so we should not close it again. Signed-off-by: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-31git-checkout: allow "checkout HEAD -- path"Libravatar Junio C Hamano1-0/+4
Even though -- is redundant in this case, we should allow it to prevent confusion. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-31rebase: Make the fast-fowarding message more user-friendly by using branch ↵Libravatar Robert Shearman1-1/+1
names instead of SHA1 IDs. Signed-off-by: Robert Shearman <rob@codeweavers.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-31rebase: Fix the detection of fast-forwarding of the current branch to upstream.Libravatar Robert Shearman1-8/+5
Previously, a rebasing operation with on a branch that is just tracking an upstream branch would output a confusing "Nothing to do" due to no patches being given to git-am. The test brings the behaviour back into line with that of just before e646c9c8c0aa995eac284ea0a2117add19c4461c. Signed-off-by: Robert Shearman <rob@codeweavers.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-30tar-tree: illustrate an obscure feature betterLibravatar Johannes Schindelin1-0/+5
Since you can tar just a subdirectory of a certain revision, tell the users so, by showing an example how to do it. Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-30git.c: allow alias expansion without a git directoryLibravatar Matthias Lederhofer1-40/+36
With this, the configuration mechanism can be used to say: [alias] init = init-db --template=/path/to/template Signed-off-by: Matthias Lederhofer <matled@gmx.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-30setup_git_directory_gently: do not barf when GIT_DIR is given.Libravatar Matthias Lederhofer1-0/+4
Earlier we barfed when GIT_DIR environment variable points at a directory yet to be created, which made it impossible to use configuration mechanism in "git-init-db". Signed-off-by: Matthias Lederhofer <matled@gmx.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-30Build on Debian GNU/kFreeBSDLibravatar Gerrit Pape1-0/+3
Patch from Petr Salinger to make the build process detect and support the Debian GNU/kFreeBSD architecture, see http://bugs.debian.org/380209 Signed-off-by: Gerrit Pape <pape@smarden.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-30Merge branch 'lt/web'Libravatar Junio C Hamano1-2/+75
* lt/web: gitweb.cgi: git_blame2: slight optimization reading the blame lines gitweb.cgi: git_blame2: Revision blocks now have alternating colors gitweb.cgi: git_blame2: Allow back-trekking through commits gitweb.cgi: git_blame2: an alternative simple working git blame
2006-07-30Merge branch '__/setup-n-mv'Libravatar Junio C Hamano40-156/+142
* __/setup-n-mv: Call setup_git_directory() much earlier Call setup_git_directory() early
2006-07-30Merge branch 'js/mv'Libravatar Junio C Hamano11-340/+522
* js/mv: builtin git-mv: support moving directories Make git-mv a builtin Extract helper bits from c-merge-recursive work
2006-07-30Merge branch 'jn/make'Libravatar Junio C Hamano5-0/+225
* jn/make: Set datarootdir in config.mak.in Quote all calls to GIT_CONF_APPEND_LINE Typofix in configure.ac comment. configure.ac vertical whitespace usage cleanup autoconf: Checks for some programs autoconf: Checks for libraries autoconf: Checks for some library functions. autoconf: Checks for typedefs, structures, and compiler characteristics. autoconf: Preparing the way for autodetection Copy description of build configuration variables to configure.ac Teach make clean about configure and autoconf autoconf: Use autoconf to write installation directories to config.mak.autogen
2006-07-29Merge branch 'lt/setup' into __/setup-n-mvLibravatar Junio C Hamano60-326/+585
This merges the new built-in calling convention code into Johannes's builtin-mv topic in order to resolve their conflicts early on. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-29Call setup_git_directory() much earlierLibravatar Linus Torvalds35-144/+128
This changes the calling convention of built-in commands and passes the "prefix" (i.e. pathname of $PWD relative to the project root level) down to them. Signed-off-by: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-28Call setup_git_directory() earlyLibravatar Linus Torvalds12-22/+25
Any git command that expects to work in a subdirectory of a project, and that reads the git config files (which is just about all of them) needs to make sure that it does the "setup_git_directory()" call before it tries to read the config file. This means, among other things, that we need to move the call out of "init_revisions()", and into the caller. This does the mostly trivial conversion to do that. Signed-off-by: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-28Display an error from update-ref if target ref name is invalid.Libravatar Shawn Pearce2-0/+17
Alex Riesen (raa.lkml@gmail.com) recently observed that git branch would fail with no error message due to unexpected situations with regards to refs. For example, if .git/refs/heads/gu is a file but "git branch -b refs/heads/gu/fixa HEAD" was invoked by the user it would fail silently due to refs/heads/gu being a file and not a directory. This change adds a test for trying to create a ref within a directory that is actually currently a file, and adds error printing within the ref locking routine should the resolve operation fail. The error printing code probably belongs at this level of the library as other failures within the ref locking, writing and logging code are also currently at this level of the code. Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-28Fix http-fetchLibravatar Johannes Schindelin1-3/+3
With the latest changes in fetch.c, http-fetch crashed accessing write_ref[i], where write_ref was NULL. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-28Merge branch 'pb/multi-fetch'Libravatar Junio C Hamano7-72/+162
* pb/multi-fetch: Teach git-http-fetch the --stdin switch Teach git-local-fetch the --stdin switch Make pull() support fetching multiple targets at once Make pull() take some implicit data as explicit arguments
2006-07-28Merge branch 'lt/web'Libravatar Junio C Hamano1-28/+55
2006-07-28Merge branch 'js/cvs'Libravatar Junio C Hamano1-4/+4
* js/cvs: cvsserver: imitate git-update-ref when committing
2006-07-28Merge branch 'js/alias-p'Libravatar Junio C Hamano3-46/+81
* js/alias-p: git wrapper: add --git-dir=<path> and --bare options Allow an alias to start with "-p"
2006-07-28Merge branch 'jc/diff'Libravatar Junio C Hamano1-1/+9
* jc/diff: git-diff A...B to (usually) mean "git-diff `git-merge-base A B` B"
2006-07-28t4103: fix binary patch application test.Libravatar Junio C Hamano1-2/+2
The generated binary patch was _not_ binary -- earlier I made the --full-index flag to imply binary patch generation to the diff machinery, but later we made it independent from --binary (although the latter implies the former). Signed-off-by: Junio C Hamano <junkio@cox.net>