summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2008-02-17check return code of prepare_revision_walkLibravatar Martin Koegler11-14/+28
A failure in prepare_revision_walk can be caused by a not parseable object. Signed-off-by: Martin Koegler <mkoegler@auto.tuwien.ac.at> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-17deref_tag: handle tag->tagged = NULLLibravatar Martin Koegler1-1/+4
Signed-off-by: Martin Koegler <mkoegler@auto.tuwien.ac.at> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-17deref_tag: handle return value NULLLibravatar Martin Koegler5-3/+12
Signed-off-by: Martin Koegler <mkoegler@auto.tuwien.ac.at> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-17help.c: use 'git_config_string' to get 'help_default_format'.Libravatar Christian Couder1-6/+2
Signed-off-by: Christian Couder <chriscool@tuxfamily.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-17Merge branch 'br/gitweb'Libravatar Junio C Hamano2-1/+9
* br/gitweb: gitweb: Use the config file to set repository owner's name.
2008-02-17gitweb: Add new option -nohtml to quot_xxx subroutinesLibravatar Jakub Narebski1-13/+24
Add support for new option -nohtml to quot_cec and quot_upr subroutines, to have output not wrapped in HTML tags. This makes those subroutines suitable to quoting attributes values, and for plain text output quoting. Currently this API is not used yet. While at it fix whitespace, and use ';' as delimiter, not separator. The option to not wrap quot_cec output in HTML tag were proposed originally in patch: "Don't open a XML tag while another one is already open" Message-ID: <20080216191628.GK30676@schiele.dyndns.org> by Robert Schiele. Originally the parameter was named '-notag', was also supportted by esc_html (but not esc_path) which passed it down to quot_cec. Mentioned patch was meant to fix the bug Martin Koegler reported in his mail "Invalid html output repo.or.cz (alt-git.git)" Message-ID: <20080216130037.GA14571@auto.tuwien.ac.at> which was fixed in different way (do not use esc_html to escape and quote HTML attributes). Signed-off-by: Robert Schiele <rschiele@gmail.com> Signed-off-by: Jakub Narebski <jnareb@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-17gitweb: Fix displaying unchopped argument in chop_and_escape_strLibravatar Jakub Narebski1-2/+2
Do not use esc_html to escape [title] _attribute_ of a HTML element, and quote unprintable characters. Replace unprintable characters by '?' and use CGI method to generate HTML element and do the escaping. This caused bug noticed by Martin Koegler, Message-ID: <20080216130037.GA14571@auto.tuwien.ac.at> that for bad commit encoding in author name, the title attribute (here to show full, not shortened name) had embedded HTML code in it, result of quoting unprintable characters the gitweb/HTML way. This of course broke the HTML, causing page being not displayed in XML validating web browsers. Signed-off-by: Jakub Narebski <jnareb@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-17bisect view: check for MinGW32 and MacOSX in addition to X11Libravatar Johannes Schindelin1-2/+2
When deciding if gitk or git-log should be used to visualize the current state, the environment variable DISPLAY was checked. Now, we check MSYSTEM (for MinGW32/MSys) and SECURITYSESSIONID (for MacOSX) in addition. Note that there is currently no way to ssh into MinGW32, and that SECURITYSESSIONID is not set automatically on MacOSX when ssh'ing into it. So this patch should be safe. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-17sending errors to stdout under $PAGERLibravatar Junio C Hamano1-0/+1
If you do this (and you are not an Emacs user who uses PAGER=cat in your *shell* buffer): $ git init Initialized empty Git repository in .git/ $ echo hello world >foo $ H=$(git hash-object -w foo) $ git tag -a foo-tag -m "Tags $H" $H $ echo $H 3b18e512dba79e4c8300dd08aeb37f8e728b8dad $ rm -f .git/objects/3b/18e5* $ git show foo-tag tag foo-tag Tagger: Junio C Hamano <gitster@pobox.com> Date: Sat Feb 16 10:43:23 2008 -0800 Tags 3b18e512dba79e4c8300dd08aeb37f8e728b8dad you do not get any indication of error. If you are careful, you would notice that no contents from the tagged object is displayed, but that is about it. If you run the "show" command without pager, however, you will see the error: $ git --no-pager show foo-tag tag foo-tag Tagger: Junio C Hamano <gitster@pobox.com> Date: Sat Feb 16 10:43:23 2008 -0800 Tags 3b18e512dba79e4c8300dd08aeb37f8e728b8dad error: Could not read object 3b18e512dba79e4c8300dd08aeb37f8e728b8dad Because we spawn the pager as the foreground process and feed its input via pipe from the real command, we cannot affect the exit status the shell sees from git command when the pager is in use (I think there is not much gain we can have by working it around, though). But at least it may make sense to show the error message to the user sitting in front of the pager. [jc: Edgar Toernig suggested a much nicer implementation than what I originally posted, which I took.] Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-17Sync with 1.5.4.2 and start 1.5.5 Release NotesLibravatar Junio C Hamano5-3/+83
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-17Merge branch 'maint'Libravatar Junio C Hamano4-11/+64
* maint: GIT 1.5.4.2
2008-02-17GIT 1.5.4.2Libravatar Junio C Hamano5-11/+65
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-16Merge branch 'bd/qsort'Libravatar Junio C Hamano3-0/+76
* bd/qsort: compat: Add simplified merge sort implementation from glibc
2008-02-16Merge branch 'sp/safecrlf'Libravatar Junio C Hamano11-11/+189
* sp/safecrlf: safecrlf: Add mechanism to warn about irreversible crlf conversions
2008-02-16Merge branch 'cc/browser'Libravatar Junio C Hamano8-66/+143
* cc/browser: Documentation: add 'git-web--browse.txt' and simplify other docs. git-web--browse: fix misplaced quote in init_browser_path() web--browse: Add a few quotes in 'init_browser_path'. Documentation: instaweb: add 'git-web--browse' information. Adjust .gitignore for 5884f1(Rename 'git-help--browse.sh'...) git-web--browse: do not start the browser with nohup instaweb: use 'git-web--browse' to launch browser. Rename 'git-help--browse.sh' to 'git-web--browse.sh'. help--browse: add '--config' option to check a config option for a browser. help: make 'git-help--browse' usable outside 'git-help'. Conflicts: git-web--browse.sh
2008-02-16Merge branch 'jc/gitignore-ends-with-slash'Libravatar Junio C Hamano7-15/+106
* jc/gitignore-ends-with-slash: gitignore: lazily find dtype gitignore(5): Allow "foo/" in ignore list to match directory "foo"
2008-02-16Merge branch 'pb/prepare-commit-msg'Libravatar Junio C Hamano7-110/+399
* pb/prepare-commit-msg: git-commit: add a prepare-commit-msg hook git-commit: Refactor creation of log message. git-commit: set GIT_EDITOR=: if editor will not be launched git-commit: support variable number of hook arguments
2008-02-16Merge branch 'jk/noetcconfig'Libravatar Junio C Hamano5-8/+31
* jk/noetcconfig: fix config reading in tests allow suppressing of global and system config Conflicts: cache.h
2008-02-16Merge branch 'jc/submittingpatches'Libravatar Junio C Hamano1-8/+57
* jc/submittingpatches: Documentation/SubmittingPatches - a suggested patch flow Documentation/SubmittingPatches: What's Acked-by and Tested-by? Documentation/SubmittingPatches: discuss first then submit Documentation/SubmittingPatches: Instruct how to use [PATCH] Subject header
2008-02-16Merge git://repo.or.cz/git-guiLibravatar Junio C Hamano2-4/+2
* git://repo.or.cz/git-gui: git-gui: Correct size of dictionary name widget in options dialog git-gui: Paper bag fix bad string length call in spellchecker
2008-02-16Merge git://git.kernel.org/pub/scm/gitk/gitkLibravatar Junio C Hamano1-1/+2
* git://git.kernel.org/pub/scm/gitk/gitk: [PATCH] gitk: Heed the lines of context in merge commits
2008-02-16Merge branch 'maint'Libravatar Junio C Hamano1-3/+20
* maint: Documentation/git-reset: Add an example of resetting selected paths Documentation/git-reset: don't mention --mixed for selected-paths reset Documentation/git-reset:
2008-02-16Documentation/SubmittingPatches - a suggested patch flowLibravatar Junio C Hamano1-0/+35
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-16Documentation/git-reset: Add an example of resetting selected pathsLibravatar Pieter de Bie1-0/+17
Signed-off-by: Pieter de Bie <pdebie@ai.rug.nl> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-16Documentation/git-reset: don't mention --mixed for selected-paths resetLibravatar Pieter de Bie1-2/+2
The option is accepted, but that is the only form selected-paths variant of the reset command takes, so there is no point mentioning it. And while we're at it, use the dashless git call. Signed-off-by: Pieter de Bie <pdebie@ai.rug.nl> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-16Documentation/git-reset:Libravatar Junio C Hamano1-1/+1
Since 3368d11 (Remove unnecessary git-rm --cached reference from status output), the status output marks the "Added but not yet committed" section as "Changes to be committed". Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-16Update fast-import documentation to discuss crash reportsLibravatar Shawn O. Pearce1-0/+87
Recent versions of fast-import will now dump information out upon crashing, making it possible for the frontend developer to review some state information and possibly restart the import from the point where it crashed. Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-16Finish current packfile during fast-import crash handlerLibravatar Shawn O. Pearce1-0/+7
If fast-import is in the middle of crashing due to a protocol error or something like that then it can be very useful to have the mark table and all objects up until that point be available for a new import to resume from. Currently we just close the active packfile, unkeep all of our newly created packfiles (so they can be deleted), and dump the marks table to a temporary file. We don't attempt to update the refs/tags that the process has in memory as much of that data can be found in the crash report and I'm not sure it would be the right thing to do under every type of crash. Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-16Include the fast-import marks table in crash reportsLibravatar Shawn O. Pearce1-0/+10
If fast-import was not run with --export-marks but we are crashing the frontend application developer may still benefit from having that information available to them. We now include the marks table as part of the crash report if --export-marks was not supplied on the command line. Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-16Include annotated tags in fast-import crash reportsLibravatar Shawn O. Pearce1-0/+13
If annotated tags were created they exist in a different namespace within the fast-import process' internal memory tables so we did not export them in the inactive branch table. Now they are written out after the branches, in the order that they were defined by the frontend process. Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-16Documentation: add 'git-web--browse.txt' and simplify other docs.Libravatar Christian Couder3-43/+86
'git-help.txt' and 'git-instaweb.txt' contained duplicated information about 'git-web--browse'. This patch puts this information where it belongs. Signed-off-by: Christian Couder <chriscool@tuxfamily.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-16git-help--browse: improve browser support under OS XLibravatar Jay Soffian1-2/+6
/usr/bin/open <document> is used under OS X to open a document as if the user had double-clicked on the file's icon (i.e. HTML files are opened w/the user's default browser). Signed-off-by: Jay Soffian <jaysoffian@gmail.com> Acked-by: Christian Couder <chriscool@tuxfamily.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-16Merge branch 'maint'Libravatar Junio C Hamano18-58/+143
* maint: commit: discard index after setting up partial commit filter-branch: handle filenames that need quoting diff: Fix miscounting of --check output hg-to-git: fix parent analysis mailinfo: feed only one line to handle_filter() for QP input diff.c: add "const" qualifier to "char *cmd" member of "struct ll_diff_driver" Add "const" qualifier to "char *excludes_file". Add "const" qualifier to "char *editor_program". Add "const" qualifier to "char *pager_program". config: add 'git_config_string' to refactor string config variables. diff.c: remove useless check for value != NULL fast-import: check return value from unpack_entry() Validate nicknames of remote branches to prohibit confusing ones diff.c: replace a 'strdup' with 'xstrdup'. diff.c: fixup garding of config parser from value=NULL
2008-02-16commit: discard index after setting up partial commitLibravatar Jeff King2-0/+25
There may still be some entries from the original index that should be discarded before we show the status. In particular, if a file was added in the index but not included in the partial commit, it would still show up in the status listing as staged for commit. Ultimately the correct fix is to keep the two states in separate index_state variables. Then we can avoid having to reload the cache from the temporary file altogether, and just point wt_status_print at the correct index. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-15filter-branch: handle filenames that need quotingLibravatar Junio C Hamano2-4/+19
The command used a very old fashioned construct to extract filenames out of diff-index and ended up corrupting the output. We can simply use --name-only and pipe into --stdin mode of update-index. It's been like that for the past 2 years or so since a94d994 (update-index: work with c-quoted name). Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-15diff: Fix miscounting of --check outputLibravatar Junio C Hamano2-2/+11
c1795bb (Unify whitespace checking) incorrectly made the checking function return without incrementing the line numbers when there is no whitespace problem is found on a '+' line. This resurrects the earlier behaviour. Noticed and reported by Jay Soffian. The test script was stolen from Jay's independent fix. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-15hg-to-git: fix parent analysisLibravatar Stelian Pop1-1/+1
Fix a bug in the hg-to-git convertor introduced by commit 1bc7c13af9f936aa80893100120b542338a10bf4: when searching the changeset parents, 'hg log' returns an extra space at the end of the line, which confuses the .split(' ') based tokenizer: Traceback (most recent call last): File "hg-to-git.py", line 123, in <module> hgchildren[mparent] += ( str(cset), ) KeyError: '' Signed-off-by: Stelian Pop <stelian@popies.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-15mailinfo: feed only one line to handle_filter() for QP inputLibravatar Jay Soffian6-1/+45
The function is intended to be fed one logical line at a time to inspect, but a QP encoded raw input line can have more than one lines, just like BASE64 encoded one. Quoting LF as =0A may be unusual but RFC2045 allows it. The issue was noticed and fixed by Jay Soffian. JC added a test to protect the fix from regressing later. Signed-off-by: Jay Soffian <jaysoffian@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-15diff.c: add "const" qualifier to "char *cmd" member of "struct ll_diff_driver"Libravatar Christian Couder1-5/+2
Also use "git_config_string" to simplify code where "cmd" is set. Signed-off-by: Christian Couder <chriscool@tuxfamily.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-15Add "const" qualifier to "char *excludes_file".Libravatar Christian Couder3-8/+4
Also use "git_config_string" to simplify "config.c" code where "excludes_file" is set. Signed-off-by: Christian Couder <chriscool@tuxfamily.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-15Add "const" qualifier to "char *editor_program".Libravatar Christian Couder3-8/+4
Also use "git_config_string" to simplify "config.c" code where "editor_program" is set. Signed-off-by: Christian Couder <chriscool@tuxfamily.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-15Add "const" qualifier to "char *pager_program".Libravatar Christian Couder3-8/+4
Also use "git_config_string" to simplify "config.c" code where "pager_program" is set. Signed-off-by: Christian Couder <chriscool@tuxfamily.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-15config: add 'git_config_string' to refactor string config variables.Libravatar Christian Couder2-13/+13
In many places we just check if a value from the config file is not NULL, then we duplicate it and return 0. This patch introduces the new 'git_config_string' function to do that. This function is also used to refactor some code in 'config.c'. Refactoring other files is left for other patches. Also not all the code in "config.c" is refactored, because the function takes a "const char **" as its first parameter, but in many places a "char *" is used instead of a "const char *". (And C does not allow using a "char **" instead of a "const char **" without a warning.) Signed-off-by: Christian Couder <chriscool@tuxfamily.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-15diff.c: remove useless check for value != NULLLibravatar Christian Couder1-7/+2
It is not necessary to check if value != NULL before calling 'parse_lldiff_command' as there is already a check inside this function. By the way this patch also improves the existing check inside 'parse_lldiff_command' by using: return config_error_nonbool(var); instead of: return error("%s: lacks value", var); Signed-off-by: Christian Couder <chriscool@tuxfamily.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-15fast-import: check return value from unpack_entry()Libravatar Shawn O. Pearce1-0/+2
If the tree object we have asked for is deltafied in the packfile and the delta did not apply correctly or was not able to be decompressed from the packfile then we can get back NULL instead of the tree data. This is (part of) the reason why read_sha1_file() can return NULL, so we need to also handle it the same way. Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-15Validate nicknames of remote branches to prohibit confusing onesLibravatar Daniel Barkalow1-1/+11
The original problem was that the parsers for configuration files were getting confused by seeing as nicknames remotes that involved directory-changing characters. In particular, the branches config file for ".." was particularly mystifying on platforms that can open directories and read odd data from them. The validation function was written by Junio Hamano (with a typo corrected). Signed-off-by: Daniel Barkalow <barkalow@iabervon.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-15diff.c: replace a 'strdup' with 'xstrdup'.Libravatar Christian Couder1-1/+1
Signed-off-by: Christian Couder <chriscool@tuxfamily.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-15diff.c: fixup garding of config parser from value=NULLLibravatar Junio C Hamano1-1/+1
Christian Couder noticed that there still were a handcrafted error() call that we should have converted to config_error_nonbool() where parse_lldiff_command() parses the configuration file. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-14git-gui: Correct size of dictionary name widget in options dialogLibravatar Shawn O. Pearce1-3/+1
We don't need to fill this entire horizontal cavity, it looks really bad on some platforms to stretch the widget out to fill the window. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2008-02-14git-gui: Paper bag fix bad string length call in spellcheckerLibravatar Shawn O. Pearce1-1/+1
We don't want the list length, we need the string length. Found due to a bad " character discovered in the text and Tcl throwing 'unmatched open quote in list'. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>