summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'maint'Junio C Hamano2008-12-093-13/+63
|\ | | | | | | | | | | * maint: work around Python warnings from AsciiDoc git-svn: Make following parents atomic
| * work around Python warnings from AsciiDocJunio C Hamano2008-12-091-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It appears that a reference to an anchor defined as [[anchor-name]] from another place using <<anchor-name>> syntax, when the anchor name contains a string "-with-" in its name, triggers these warnings from Python interpreter. asciidoc -b docbook -d book user-manual.txt <string>:1: Warning: 'with' will become a reserved keyword in Python 2.6 <string>:1: Warning: 'with' will become a reserved keyword in Python 2.6 <string>:1: Warning: 'with' will become a reserved keyword in Python 2.6 <string>:1: Warning: 'with' will become a reserved keyword in Python 2.6 There currently is no reference to "Finding comments with given content", but for consistency and for futureproofing, the anchor is also updated as the other ones that are actually used and trigger these warnings. Signed-off-by: Junio C Hamano <junio@pobox.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * git-svn: Make following parents atomicDeskin Miller2008-12-082-4/+54
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | find_parent_branch generates branch@rev type branches when one has to look back through SVN history to properly get the history for a branch copied from somewhere not already being tracked by git-svn. If in the process of fetching this history, git-svn is interrupted, then when one fetches again, it will use whatever was last fetched as the parent commit and fail to fetch any more history which it didn't get to before being terminated. This is especially troubling in that different git-svn copies of the same SVN repository can end up with different commit sha1s, incorrectly showing the history as divergent and precluding easy collaboration using git push and fetch. To fix this, when we initialise the Git::SVN object $gs to search for and perhaps fetch history, we check if there are any commits in SVN in the range between the current revision $gs is at, and the top revision for which we were asked to fill history. If there are commits we're missing in that range, we continue the fetch from the current revision to the top, properly getting all history before using it as the parent for the branch we're trying to create. Signed-off-by: Deskin Miller <deskinm@umich.edu> Acked-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | diff: respect textconv in rewrite diffsJeff King2008-12-092-13/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently we just skip rewrite diffs for binary files; this patch makes an exception for files which will be textconv'd, and actually performs the textconv before generating the diff. Conceptually, rewrite diffs should be in the exact same format as the a non-rewrite diff, except that we refuse to share any context. Thus it makes very little sense for "git diff" to show a textconv'd diff, but for "git diff -B" to show "Binary files differ". Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | diff: fix handling of binary rewrite diffsJeff King2008-12-092-1/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current emit_rewrite_diff code always writes a text patch without checking whether the content is binary. This means that if you end up with a rewrite diff for a binary file, you get lots of raw binary goo in your patch. Instead, if we have binary files, then let's just skip emit_rewrite_diff altogether. We will already have shown the "dissimilarity index" line, so it is really about the diff contents. If binary diffs are turned off, the "Binary files a/file and b/file differ" message should be the same in either case. If we do have binary patches turned on, there isn't much point in making a less-efficient binary patch that does a total rewrite; no human is going to read it, and since binary patches don't apply with any fuzz anyway, the result of application should be the same. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | Fix typos in documentationAlexander Potashev2008-12-092-2/+2
| | | | | | | | | | Signed-off-by: Alexander Potashev <aspotashev@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | git-p4: Fix regression in p4Where method.Tor Arvid Lund2008-12-091-3/+10
| | | | | | | | | | | | | | | | | | | | | | Unfortunately, I introduced a bug in commit 7f705dc36 (git-p4: Fix bug in p4Where method). This happens because sometimes the result from "p4 where <somepath>" doesn't contain a "depotFile" key, but instead a "data" key that needs further parsing. This commit should ensure that both of these cases are checked. Signed-off-by: Tor Arvid Lund <torarvid@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | Improve language in git-merge.txt and related docsRalf Wildenhues2008-12-099-49/+48
| | | | | | | | | | | | | | Improve some minor language and format issues like hyphenation, phrases, spacing, word order, comma, attributes. Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | Define linkgit macro in [macros] sectionAlexey Borzenkov2008-12-081-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | Starting with asciidoc 8.3.0 linkgit macro is no longer recognized by asciidoc and user guide suggests (http://www.methods.co.nz/asciidoc/userguide.html#_macro_definitions) that macros are supposed to be defined in [macros] section. I'm not sure whether undefined linkgit macro was working by pure chance or it is a regression in asciidoc 8.3.0, but this patch adds proper definition for the linkgit macro, allowing it to work on 8.3.0. Signed-off-by: Alexey Borzenkov <snaury@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | gitweb: Fix bug in insert_file() subroutineJakub Narebski2008-12-082-1/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In insert_file() subroutine (which is used to insert HTML fragments as custom header, footer, hometext (for projects list view), and per project README.html (for summary view)) we used: map(to_utf8, <$fd>); This doesn't work, and other form has to be used: map { to_utf8($_) } <$fd>; Now with test for t9600 added, for $GIT_DIR/README.html. Signed-off-by: Jakub Narebski <jnareb@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | diff: allow turning on textconv explicitly for plumbingJeff King2008-12-071-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some history viewers use the diff plumbing to generate diffs rather than going through the "git diff" porcelain. Currently, there is no way for them to specify that they would like to see the text-converted version of the diff. This patch adds a "--textconv" option to allow such a plumbing user to allow text conversion. The user can then tell the viewer whether or not they would like text conversion enabled. While it may be tempting add a configuration option rather than requiring each plumbing user to be configured to pass --textconv, that is somewhat dangerous. Text-converted diffs generally cannot be applied directly, so each plumbing user should "opt in" to generating such a diff, either by explicit request of the user or by confirming that their output will not be fed to patch. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | reorder ALLOW_TEXTCONV option settingJeff King2008-12-073-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Right now for the diff porcelain and the log family, we call: init_revisions(); setup_revisions(); DIFF_OPT_SET(ALLOW_TEXTCONV); However, that means textconv will _always_ be on, instead of being a default that can be manipulated with setup_revisions. Instead, we want: init_revisions(); DIFF_OPT_SET(ALLOW_TEXTCONV); setup_revisions(); which is what this patch does. We'll go ahead and move the callsite in wt-status, also; even though the user can't pass any options here, it is a cleanup that will help avoid any surprise later if the setup_revisions line is changed. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | read-cache.c: typofix in commentJunio C Hamano2008-12-071-1/+1
| | | | | | | | Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | builtin-checkout.c: check error return from read_cache()Junio C Hamano2008-12-071-2/+5
| | | | | | | | Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | Point "stale" 1.6.0.5 documentation from the main git documentation pagev1.6.1-rc2Junio C Hamano2008-12-071-1/+2
| | | | | | | | Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | Revert "git-stash: use git rev-parse -q"Junio C Hamano2008-12-071-6/+6
| | | | | | | | | | | | | | This reverts commit 757c7f60a78004fc3d0ea62f44320d54ef430c10 as an unnecessary error message to pop up when the last stash entry is dropped. It simply is not worth the aggravation.
* | Update draft release notes for 1.6.1Junio C Hamano2008-12-071-22/+1
| | | | | | | | | | | | | | | | | | | | A handful of fixes have been backmerged to 'maint' and are now contained in 1.6.0.X series as the result, so drop them from this document. Also contains typofix and duplicate removal pointed out by Bjørn Lindeijer and Jakub Narebski. Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | Merge branch 'maint'Junio C Hamano2008-12-075-31/+55
|\ \ | |/ | | | | | | | | | | | | | | | | * maint: GIT 1.6.0.5 "git diff <tree>{3,}": do not reverse order of arguments tag: delete TAG_EDITMSG only on successful tag gitweb: Make project specific override for 'grep' feature work http.c: use 'git_config_string' to get 'curl_http_proxy' fetch-pack: Avoid memcpy() with src==dst
| * GIT 1.6.0.5v1.6.0.5Junio C Hamano2008-12-071-15/+28
| | | | | | | | Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * "git diff <tree>{3,}": do not reverse order of argumentsMatt McCutchen2008-12-073-3/+31
| | | | | | | | | | | | | | | | | | | | | | | | According to the message of commit 0fe7c1de16f71312e6adac4b85bddf0d62a47168, "git diff" with three or more trees expects the merged tree first followed by the parents, in order. However, this command reversed the order of its arguments, resulting in confusing diffs. A comment /* Again, the revs are all reverse */ suggested there was a reason for this, but I can't figure out the reason, so I removed the reversal of the arguments. Test case included. Signed-off-by: Matt McCutchen <matt@mattmccutchen.net> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * tag: delete TAG_EDITMSG only on successful tagJeff King2008-12-071-8/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The user may put some effort into writing an annotated tag message. When the tagging process later fails (which can happen fairly easily, since it may be dependent on gpg being correctly configured and used), there is no record left on disk of the tag message. Instead, let's keep the TAG_EDITMSG file around until we are sure the tag has been created successfully. If we die because of an error, the user can recover their text from that file. Leaving the file in place causes no conflicts; it will be silently overwritten by the next annotated tag creation. This matches the behavior of COMMIT_EDITMSG, which stays around in case of error. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * gitweb: Make project specific override for 'grep' feature workJakub Narebski2008-12-071-0/+1
| | | | | | | | | | | | | | | | | | The 'grep' feature was marked in the comments as having project specific config, but it lacked 'sub' key required for it to work. Kind-of-Noticed-by: Matt Kraai <kraai@ftbfs.org> Signed-off-by: Jakub Narebski <jnareb@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * http.c: use 'git_config_string' to get 'curl_http_proxy'Miklos Vajna2008-12-071-7/+4
| | | | | | | | | | Signed-off-by: Miklos Vajna <vmiklos@frugalware.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * fetch-pack: Avoid memcpy() with src==dstThomas Rast2008-12-071-1/+2
| | | | | | | | | | | | | | | | | | | | memcpy() may only be used for disjoint memory areas, but when invoked from cmd_fetch_pack(), we have my_args == &args. (The argument cannot be removed entirely because transport.c invokes with its own variable.) Signed-off-by: Thomas Rast <trast@student.ethz.ch> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | Update draft release notes to 1.6.1Junio C Hamano2008-12-051-1/+17
| | | | | | | | Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | Merge branch 'jc/am-options'Junio C Hamano2008-12-0512-5/+238
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | * jc/am-options: git-am: rename apply_opt_extra file to apply-opt Test that git-am does not lose -C/-p/--whitespace options git-am: propagate --3way options as well git-am: propagate -C<n>, -p<n> options as well git-am --whitespace: do not lose the command line option
| * | git-am: rename apply_opt_extra file to apply-optJunio C Hamano2008-12-052-3/+2
| | | | | | | | | | | | | | | | | | | | | All other state files use dash in their names, not underscores. Also, there is no reason to call this "extra". Drop it. Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | Test that git-am does not lose -C/-p/--whitespace optionsJunio C Hamano2008-12-0411-0/+229
| | | | | | | | | | | | | | | | | | | | | | | | These tests make sure that "git am" does not lose command line options specified when it was started, after it is interrupted by a patch that does not apply earlier in the series. Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | git-am: propagate --3way options as wellJunio C Hamano2008-12-041-2/+7
| | | | | | | | | | | | | | | | | | | | | The reasoning is the same as the previous patch, where we made -C<n> and -p<n> propagate across a failure. Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | git-am: propagate -C<n>, -p<n> options as wellJunio C Hamano2008-12-041-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These options are meant to deal with patches that do not apply cleanly due to the differences between the version the patch was based on and the version "git am" is working on. Because a series of patches applied in the same "git am" run tends to come from the same source, it is more useful to propagate these options after the application stops. Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | git-am --whitespace: do not lose the command line optionJunio C Hamano2008-12-041-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When you start "git am --whitespace=fix" and the patch application process is interrupted by an unapplicable patch early in the series, after fixing the offending patch, the remainder of the patch should be processed still with --whitespace=fix when restarted with "git am --resolved" (or dropping the offending patch with "git am --skip"). The breakage was introduced by the commit 67dad68 (add -C[NUM] to git-am, 2007-02-08); this should fix it. Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | git-p4: Fix bug in p4Where method.Tor Arvid Lund2008-12-041-1/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When running: p4 where //depot/SomePath/... The result can in some situations look like: //depot/SomePath/... //client/SomePath/... /home/user/p4root/SomePath/... -//depot/SomePath/UndesiredSubdir/... //client/SomePath/UndesiredSubdir/... /home/user/p4root/SomePath/UndesiredSubdir/... This depends on the users Client view. The current p4Where method will now return /home/user/p4root/SomePath/UndesiredSubdir/... which is not what we want. This patch loops through the results from "p4 where", and picks the one where the depotFile exactly matches the given depotPath (//depot/SomePath/... in this example). Signed-off-by: Tor Arvid Lund <torarvid@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | Report symlink failures in merge-recursiveAlex Riesen2008-12-041-1/+2
| | | | | | | | | | | | | | | Signed-off-by: Alex Riesen <raa.lkml@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | Make chdir failures visibleAlex Riesen2008-12-042-3/+4
| | | | | | | | | | | | | | | Signed-off-by: Alex Riesen <raa.lkml@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | Make some of fwrite/fclose/write/close failures visibleAlex Riesen2008-12-043-15/+45
|/ / | | | | | | | | | | | | | | So that full filesystem conditions or permissions problems won't go unnoticed. Signed-off-by: Alex Riesen <raa.lkml@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | Merge branch 'dm/svn-remote'Junio C Hamano2008-12-032-1/+20
|\ \ | | | | | | | | | | | | * dm/svn-remote: git-svn: Make branch use correct svn-remote
| * | git-svn: Make branch use correct svn-remoteDeskin Miller2008-12-032-1/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The 'branch' subcommand incorrectly had the svn-remote to use hardcoded as 'svn', the default remote name. This meant that branches derived from other svn-remotes would try to use the branch and tag configuration for the 'svn' remote, potentially copying would-be branches to the wrong place in SVN, into the branch namespace for another project. Fix this by using the remote name extracted from the svn info for the specified git ref. Add a testcase for this behaviour. [jc: squashed in a fix to test from Michael J Gruber for older svn (1.4)] Signed-off-by: Deskin Miller <deskinm@umich.edu> Acked-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | Merge branch 'jn/gitweb-utf8'Junio C Hamano2008-12-031-16/+16
|\ \ \ | | | | | | | | | | | | | | | | * jn/gitweb-utf8: gitweb: Fix handling of non-ASCII characters in inserted HTML files
| * | | gitweb: Fix handling of non-ASCII characters in inserted HTML filesJakub Narebski2008-12-021-16/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use new insert_file() subroutine to insert HTML chunks from external files: $site_header, $home_text (by default indextext.html), $site_footer, and $projectroot/$project/REAME.html. All non-ASCII chars of those files will be broken by Perl IO layer without decoding to utf8, so insert_file() does to_utf8() on each printed line; alternate solution would be to open those files with "binmode $fh, ':utf8'", or even all files with "use open qw(:std :utf8)". Note that inserting README.html lost one of checks for simplicity. Noticed-by: Tatsuki Sugiura <sugi@nemui.org> Signed-off-by: Jakub Narebski <jnareb@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | add stage to gitignoreJeff King2008-12-031-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a generated builtin since 24b1f65f (Install git-stage in exec-path). Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | submodule: use git rev-parse -qMiklos Vajna2008-12-031-3/+3
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Miklos Vajna <vmiklos@frugalware.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | rebase: use git rev-parse -qMiklos Vajna2008-12-031-2/+2
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Miklos Vajna <vmiklos@frugalware.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | pull: use git rev-parse -qMiklos Vajna2008-12-031-4/+4
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Miklos Vajna <vmiklos@frugalware.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | lost-found: use git rev-parse -qMiklos Vajna2008-12-031-1/+1
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Miklos Vajna <vmiklos@frugalware.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | filter-branch: use git rev-parse -qMiklos Vajna2008-12-031-1/+1
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Miklos Vajna <vmiklos@frugalware.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | Merge branch 'jc/rm-i-t-a'Junio C Hamano2008-12-038-32/+187
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * jc/rm-i-t-a: git add --intent-to-add: do not let an empty blob be committed by accident git add --intent-to-add: fix removal of cached emptiness builtin-rm.c: explain and clarify the "local change" logic Extend index to save more flags
| * | | | git add --intent-to-add: do not let an empty blob be committed by accidentJunio C Hamano2008-11-305-5/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Writing a tree out of an index with an "intent to add" entry is blocked. This implies that you cannot "git commit" from such a state; however you can still do "git commit -a" or "git commit $that_path". Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | | | git add --intent-to-add: fix removal of cached emptinessJunio C Hamano2008-11-284-4/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This uses the extended index flag mechanism introduced earlier to mark the entries added to the index via "git add -N" with CE_INTENT_TO_ADD. The logic to detect an "intent to add" entry for the purpose of allowing "git rm --cached $path" is tightened to check not just for a staged empty blob, but with the CE_INTENT_TO_ADD bit. This protects an empty blob that was explicitly added and then modified in the work tree from being dropped with this sequence: $ >empty $ git add empty $ echo "non empty" >empty $ git rm --cached empty Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | | | builtin-rm.c: explain and clarify the "local change" logicJunio C Hamano2008-11-281-11/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Explain the logic to check local modification a bit more in the comment, especially because the existing comment that talks about "git rm --cached" was placed in a part that was not about "--cached" at all. Also clarify "if .. else if .." structure. Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | | | Merge branch 'nd/narrow' (early part) into jc/add-i-t-aJunio C Hamano2008-11-282-14/+95
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | * 'nd/narrow' (early part): Extend index to save more flags