summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2008-04-27rev-parse: fix --verify to error out when passed junk after a good revLibravatar Christian Couder1-2/+2
Before this patch something like: $ git rev-parse --verify <good-rev> <junk> worked whatever junk was as long as <good-rev> could be parsed correctly. This patch makes "git rev-parse --verify" error out when passed any junk after a good rev. Signed-off-by: Christian Couder <chriscool@tuxfamily.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-04-27git checkout: add -t alias for --trackLibravatar Miklos Vajna2-2/+2
Signed-off-by: Miklos Vajna <vmiklos@frugalware.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-04-26rev-parse: teach "--verify" to be quiet when using "-q" or "--quiet"Libravatar Christian Couder2-4/+21
Currently "git rev-parse --verify <something>" is often used with its error output redirected to /dev/null. This patch makes it easier to do that. The -q|--quiet option is designed to work the same way as it does for "git symbolic-ref". Signed-off-by: Christian Couder <chriscool@tuxfamily.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-04-25Merge branch 'ho/shared'Libravatar Junio C Hamano7-38/+149
* ho/shared: Make core.sharedRepository more generic
2008-04-24Merge branch 'maint'Libravatar Junio C Hamano8-19/+170
* maint: remote: create fetch config lines with '+' push: allow unqualified dest refspecs to DWIM doc/git-gc: add a note about what is collected t5516: remove ambiguity test (1) Linked glossary from cvs-migration page write-tree: properly detect failure to write tree objects
2008-04-24remote: create fetch config lines with '+'Libravatar Jeff King2-0/+11
Since git-remote always uses remote tracking branches, it should be safe to always force updates of those branches. I.e., we should generate fetch = +refs/heads/*:refs/remotes/$remote/* instead of fetch = refs/heads/*:refs/remotes/$remote/* This was the behavior of the perl version, which seems to have been lost in the C rewrite. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-04-24push: allow unqualified dest refspecs to DWIMLibravatar Jeff King2-3/+69
Previously, a push like: git push remote src:dst would go through the following steps: 1. check for an unambiguous 'dst' on the remote; if it exists, then push to that ref 2. otherwise, check if 'dst' begins with 'refs/'; if it does, create a new ref 3. otherwise, complain because we don't know where in the refs hierarchy to put 'dst' However, in some cases, we can guess about the ref type of 'dst' based on the ref type of 'src'. Specifically, before complaining we now check: 2.5. if 'src' resolves to a ref starting with refs/heads or refs/tags, then prepend that to 'dst' So now this creates a new branch on the remote, whereas it previously failed with an error message: git push master:newbranch Note that, by design, we limit this DWIM behavior only to source refs which resolve exactly (including symrefs which resolve to existing refs). We still complain on a partial destination refspec if the source is a raw sha1, or a ref expression such as 'master~10'. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-04-24Merge branch 'maint-1.5.4' into maintLibravatar Junio C Hamano4-16/+75
* maint-1.5.4: t5516: remove ambiguity test (1) Linked glossary from cvs-migration page write-tree: properly detect failure to write tree objects
2008-04-24doc/git-gc: add a note about what is collectedLibravatar Jeff King1-0/+15
It seems to be a FAQ that people try running git-gc, and then get puzzled about why the size of their .git directory didn't change. This note mentions the reasons why things might unexpectedly get kept. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-04-23t5516: remove ambiguity test (1)Libravatar Jeff King1-13/+1
This test tried to push into a remote with ambiguous refs in remotes/$x/master and remotes/$y/master. However, the remote never actually tells us about the refs/remotes hierarchy, so we don't even see this ambiguity. The test happened to pass because we were simply looking for failure, and the test fails for another reason: the dst refspec does not exist and does not begin with refs/, making it invalid. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-04-23Linked glossary from cvs-migration pageLibravatar Matt Graham1-1/+2
Coming from CVS, I found the git glossary vital to learning git and learning how terms in git correlate to the cvs terminology with which I am familiar. This patch links the glossary from the cvs-migration page so cvs users will be able to fine the glossary as soon as they start looking at git documents. Signed-off-by: Matt Graham <mdg149@gmail.com> Acked-by: J. Bruce Fields <bfields@fieldses.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-04-23write-tree: properly detect failure to write tree objectsLibravatar Junio C Hamano2-2/+72
Tomasz Fortuna reported that "git commit" does not error out properly when it cannot write tree objects out. "git write-tree" shares the same issue, as the failure to notice the error is deep in the logic to write tree objects out recursively. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-04-23Merge branch 'maint'Libravatar Junio C Hamano11-46/+54
* maint: Amend git-push refspec documentation git-gc --prune is deprecated svn-git: Use binmode for reading/writing binary rev maps diff options documentation: refer to --diff-filter in --name-status Don't force imap.host to be set when imap.tunnel is set git-clone.txt: Adjust note to --shared for new pruning behavior of git-gc git-svn bug with blank commits and author file archive.c: format_subst - fixed bogus argument to memchr copy.c: copy_fd - correctly report write errors gitattributes: Fix subdirectory attributes specified from root directory
2008-04-22Merge branch 'maint-1.5.4' into maintLibravatar Junio C Hamano6-10/+24
* maint-1.5.4: svn-git: Use binmode for reading/writing binary rev maps diff options documentation: refer to --diff-filter in --name-status git-svn bug with blank commits and author file archive.c: format_subst - fixed bogus argument to memchr copy.c: copy_fd - correctly report write errors gitattributes: Fix subdirectory attributes specified from root directory
2008-04-22Amend git-push refspec documentationLibravatar Sam Vilain1-10/+13
These paragraphs are a little confusing. Also, make it clearer when you have to specify the full name for <dst> Signed-off-by: Sam Vilain <sam.vilain@catalyst.net.nz> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-04-22git-gc --prune is deprecatedLibravatar Dmitry Potapov2-20/+3
25ee9731c137d0a24b0f4879eb0b0cce9b77d5b0 made the '--prune' option deprecated and removed its description from the git-gc man page. This patch removes all references to this option from the rest of the Git documentation. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-04-22svn-git: Use binmode for reading/writing binary rev mapsLibravatar Michael Weber1-0/+4
Otherwise, there is a possible interaction with UTF-8 locales in combination with PERL_UNICODE, resulting in "inconsistent size: 40" or "read:"-type errors. See also: perldoc -f binmode <http://perldoc.perl.org/perl581delta.html#UTF-8-no-longer-default-under-UTF-8-locales> Signed-off-by: Michael Weber <michaelw@foldr.org> Acked-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-04-22diff options documentation: refer to --diff-filter in --name-statusLibravatar Miklos Vajna1-1/+2
git diff --name-status outputs letters, but the meaning of those letters is documented elsewhere. Add a note to make the manpage more intuitive. Signed-off-by: Miklos Vajna <vmiklos@frugalware.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-04-22Don't force imap.host to be set when imap.tunnel is setLibravatar Jeff King1-2/+5
The documentation for git-imap-send suggests a tunnel setting such as Tunnel = "ssh -q user@server.com /usr/bin/imapd ./Maildir 2> /dev/null" which works wonderfully and doesn't require a username, password or port setting. However, git-imap-send currently requires that the imap.host variable be set in the config even when it was unused. This patch changes imap-send to only require that the imap.host setting is set if imap.tunnel is not set. Otherwise, server.host is set to "tunnel" for reporting purposes. Acked-by: Andy Parkins <andyparkins@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-04-22git-clone.txt: Adjust note to --shared for new pruning behavior of git-gcLibravatar Brandon Casey1-4/+9
Since git-gc now always calls prune, even with --auto, unreferenced objects may be removed by more operations than just git-gc. This is important for clones created using --shared or --reference. Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil> Signed-off-by: Dmitry Potapov <dpotapov@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-04-22git-svn bug with blank commits and author fileLibravatar Thomas Guyot-Sionnest1-2/+1
When trying to import from svn using an author file, git-svn bails out if it encounters a blank author. The attached patch changes this behavior and allow using the author file with blanks authors. I came across this bug while importing from a cvs2svn repo where the initial revision (1) has a blank author. This doesn't break the behavior of bailing out when an unknown author is encountered. Acked-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-04-22archive.c: format_subst - fixed bogus argument to memchrLibravatar Ariel Badichi1-2/+2
Also removed a superfluous test. Signed-off-by: Ariel Badichi <abadichi@bezeqint.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-04-22copy.c: copy_fd - correctly report write errorsLibravatar Ariel Badichi1-4/+4
Previously, the errno could have been lost due to an intervening close() call. This patch also contains minor cosmetic changes. Signed-off-by: Ariel Badichi <abadichi@bezeqint.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-04-22gitattributes: Fix subdirectory attributes specified from root directoryLibravatar Matthew Ogilvie2-1/+11
Signed-off-by: Matthew Ogilvie <mmogilvi_git@miniinfo.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-04-22Merge branch 'maint'Libravatar Junio C Hamano4-4/+14
* maint: post-receive-email: fix accidental removal of a trailing space in signature line Escape project names before creating pathinfo URLs Escape project name in regexp bash: Add completion for git diff --base --ours --theirs diff-options.txt: document the new "--dirstat" option
2008-04-21post-receive-email: fix accidental removal of a trailing space in signature lineLibravatar Andy Parkins1-1/+2
post-receive-email adds a signature to the end of emails in generate_email_footer(). The signature was separated from the main email body using the standard string "-- ". (see RFC 3676) a6080a0 (War on whitespace, 2007-06-07) removed the trailing whitespace from "-- ", leaving it as "--", which is not a correct signature separator. This patch restores the missing space, but does it in a way that will not set off the trailing whitespace alarms. Signed-off-by: Andy Parkins <andyparkins@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-04-21completion: remove use of dashed git commandsLibravatar Dan McGee1-4/+4
Signed-off-by: Dan McGee <dpmcgee@gmail.com> Acked-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-04-21completion: allow 'git remote' subcommand completionLibravatar Dan McGee1-0/+1
After typing 'git remote ', the subcommand options were not shown. Fix it by adding the missing __gitcomp call. Signed-off-by: Dan McGee <dpmcgee@gmail.com> Acked-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-04-21Escape project names before creating pathinfo URLsLibravatar martin f. krafft1-2/+2
If a project name contains special URL characters like +, gitweb's links break in subtle ways. The solution is to pass the project name through esc_url() and using the return value. Signed-off-by: martin f. krafft <madduck@madduck.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-04-21Escape project name in regexpLibravatar martin f. krafft1-1/+1
The project name, when used in a regular expression, needs to be quoted properly, so that stuff like '++' in the project name does not cause Perl to barf. Related info: http://bugs.debian.org/476076 This is a bug in Perl's CGI.pm, but fixing that exposed a similar bug in gitweb.perl Signed-off-by: martin f. krafft <madduck@madduck.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-04-21Spelling fixes in the gitweb documentationLibravatar Rafael Garcia-Suarez2-64/+65
Mostly spelling and grammar nits. Signed-off-by: Rafael Garcia-Suarez <rgarciasuarez@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-04-21git.el: Set process-environment instead of invoking envLibravatar Clifford Caoile1-7/+4
According to the similar patch from David Kågedal [1], "this will make it a little less posix-dependent and more efficient." However, there are two other areas that need to replaced, namely git-run-command-region and git-run-hooks. This patch implements the changes of [1] onto those Emacs Lisp functions. If unpatched, using the git port "msysgit" on Windows will require defadvice changes as shown at [2] (also explained at 4msysgit.git [3]). I have tested git-run-command-region on msysgit, because this is always called by git-commit (via git-commit-tree <- git-do-commit <- git-commit-file). However, I could not test git-run-hooks because it currently does not work on the Emacs Windows port. The latter reports the hooks files as a+rw and a-x, despite msysgit and cygwin chmod setting on the respective files. References: [1] f27e55864317611385be4d33b3c53ca787379df9 [2] http://groups.google.com/group/msysgit/browse_thread/thread/b852fef689817707 [3] http://repo.or.cz/w/git/mingw/4msysgit.git?a=commit;h=3c30e5e87358eba7b6d7dcd6301ae8438f0c30ea Signed-off-by: Clifford Caoile <piyo@users.sourceforge.net> Acked-by: David Kågedal <davidk@lysator.liu.se> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-04-21bash: Add completion for git diff --base --ours --theirsLibravatar Teemu Likonen1-0/+1
Signed-off-by: Teemu Likonen <tlikonen@iki.fi> Acked-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-04-21diff-options.txt: document the new "--dirstat" optionLibravatar Gerrit Pape1-0/+8
This commit adds the documentation for the new option added by 7df7c01 (Add "--dirstat" for some directory statistics, 2008-02-12). Noticed by Clint Adams, reported through http://bugs.debian.org/476437 Signed-off-by: Gerrit Pape <pape@smarden.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-04-20First batch of post 1.5.5 updatesLibravatar Junio C Hamano2-1/+60
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-04-20Merge branch 'maint'Libravatar Junio C Hamano3-1/+48
* maint: GIT 1.5.5.1
2008-04-20GIT 1.5.5.1Libravatar Junio C Hamano3-1/+48
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-04-19Merge branch 'jc/maint-rebase-am' into maintLibravatar Junio C Hamano2-5/+55
* jc/maint-rebase-am: rebase: do not munge commit log message Conflicts: git-am.sh
2008-04-19Merge branch 'jc/sha1-lookup'Libravatar Junio C Hamano4-3/+214
* jc/sha1-lookup: sha1-lookup: make selection of 'middle' less aggressive sha1-lookup: more memory efficient search in sorted list of SHA-1
2008-04-19Merge branch 'jc/dirstat'Libravatar Junio C Hamano1-23/+60
* jc/dirstat: diff: make --dirstat binary-file safe
2008-04-19Merge branch 'mv/defer-gc'Libravatar Junio C Hamano3-0/+74
* mv/defer-gc: contrib/hooks: add an example pre-auto-gc hook Documentation/hooks: add pre-auto-gc hook git-gc --auto: add pre-auto-gc hook
2008-04-19Merge branch 'py/submodule'Libravatar Junio C Hamano5-2/+207
* py/submodule: builtin-status: Add tests for submodule summary builtin-status: submodule summary support git-submodule summary: --for-status option
2008-04-19Merge branch 'jc/terminator-separator'Libravatar Junio C Hamano7-31/+43
* jc/terminator-separator: log: teach "terminator" vs "separator" mode to "--pretty=format"
2008-04-19Merge branch 'jk/remote-default-show'Libravatar Junio C Hamano1-1/+6
* jk/remote-default-show: git-remote: show all remotes with "git remote show"
2008-04-19Merge branch 'mk/color'Libravatar Junio C Hamano2-1/+7
* mk/color: Use color.ui variable in scripts too
2008-04-19Merge branch 'jc/maint-rebase-am'Libravatar Junio C Hamano2-5/+55
* jc/maint-rebase-am: rebase: do not munge commit log message Conflicts: git-am.sh
2008-04-18Merge branch 'maint'Libravatar Junio C Hamano8-22/+97
* maint: gitweb: Fix 'history' view for deleted files with history Document that WebDAV doesn't need git on the server, and works over SSL git-remote: reject adding remotes with invalid names am: POSIX portability fix
2008-04-18gitweb: Fix 'history' view for deleted files with historyLibravatar Jakub Narebski2-3/+31
When asked for history of a file which is not present in given branch ("HEAD", i.e. current branch, or given by transient $hash_hase ('hb') parameter), but is present deeper in the history (meaning that "git rev-list --full-history $hash_base -- $file_name" is not empty), and there is no $hash ('h') parameter set for a file, gitweb would spew multiple of "Use of uninitialized value" warnings, and some links would be missing. This commit fixes this bug. This bug occurs in the rare cases when "git log -- <path>" is empty and "git log --full-history -- <path>" is not, or to be more exact in the cases when full-history starts later than given branch. It can happen if you are using handcrafted gitwb URL, or if you follow generic 'history' link or bookmark for a file which got deleted. Gitweb tried to get file type ('tree', or 'blob', or even 'commit') from the commit we start searching from (where the file was not present), and not among found commits. This was the cause of "Use of uninitialized value" warnings. This commit also add tests for such situation to t9500 test. While we are it, return HTTP error if there is _no_ history; it means that file or directory was not found (for given branch). Also error out if type of item could not be found: it should not happen now, but better be sure. Signed-off-by: Jakub Narebski <jnareb@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-04-18Document that WebDAV doesn't need git on the server, and works over SSLLibravatar Matthieu Moy1-12/+33
I managed to set up a Git repository on a preconfigured WebDAV server, and using HTTPS, without installing Git on it or changing the server configuration. This works through a proxy too. This patch reflects this (it previously stated that Git was _necessary_ on the server, which isn't true). Also give a few hints to troubleshoting. Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-04-18Merge branch 'maint-1.5.4' into maintLibravatar Junio C Hamano1-1/+1
* maint-1.5.4: am: POSIX portability fix