Re: [PATCH v9 3/5] Implement line-history search (git log -L)

2013-03-23 Thread Thomas Rast
Junio C Hamano gits...@pobox.com writes: Thomas Rast tr...@student.ethz.ch writes: +void line_log_init(struct rev_info *rev, const char *prefix, struct string_list *args) +{ +struct commit *commit = NULL; +struct line_log_data *range; + +commit = check_single_commit(rev); +

Re: feature request - have git honor nested .gitconfig files

2013-03-23 Thread Thomas Rast
Jeff King p...@peff.net writes: I'd rather not invent a new language. It will either not be featureful enough, or will end up bloated. Or both. How about something like: [include] exec = case \$GIT_DIR\ in) */dev/*) cat ~/.config/git/dev-config ;;

[PATCH v9a 0/5] git log -L

2013-03-23 Thread Thomas Rast
This is a small fix to an embarrassing problem with 4/5; as Junio noticed Does not seem to pass its own test (t4211-line-log.sh). This resurrects two t/t4211/expect.* files that were missing from v9 due to a botched cleanup. Sorry for the noise. Bo Yang (2): Refactor parse_loc Export

[PATCH v9a 1/5] Refactor parse_loc

2013-03-23 Thread Thomas Rast
From: Bo Yang struggleyb@gmail.com We want to use the same style of -L n,m argument for 'git log -L' as for git-blame. Refactor the argument parsing of the range arguments from builtin/blame.c to the (new) file that will hold the 'git log -L' logic. To accommodate different data structures

[PATCH v9a 2/5] Export rewrite_parents() for 'log -L'

2013-03-23 Thread Thomas Rast
From: Bo Yang struggleyb@gmail.com The function rewrite_one is used to rewrite a single parent of the current commit, and is used by rewrite_parents to rewrite all the parents. Decouple the dependence between them by making rewrite_one a callback function that is passed to rewrite_parents.

[PATCH v9a 4/5] log -L: :pattern:file syntax to find by funcname

2013-03-23 Thread Thomas Rast
This new syntax finds a funcname matching /pattern/, and then takes from there up to (but not including) the next funcname. So you can say git log -L:main:main.c and it will dig up the main() function and show its line-log, provided there are no other funcnames matching 'main'.

Re: feature request - have git honor nested .gitconfig files

2013-03-23 Thread Jeff King
On Fri, Mar 22, 2013 at 05:06:28PM -0700, Jonathan Nieder wrote: I'd rather not invent a new language. It will either not be featureful enough, or will end up bloated. Or both. How about something like: [include] exec = case \$GIT_DIR\ in) */dev/*) cat

Re: feature request - have git honor nested .gitconfig files

2013-03-23 Thread Jeff King
On Sat, Mar 23, 2013 at 07:15:42AM +0100, Thomas Rast wrote: It involves a shell invocation, but it's not like we parse config in a tight loop. Bonus points if git provides the name of the current config file, so exec can use relative paths like: We do, however, parse config more than

Re: git branch: multiple --merged and --no-merged options?

2013-03-23 Thread Jeff King
On Fri, Mar 22, 2013 at 09:46:42PM -0500, Jed Brown wrote: On Fri, Mar 15, 2013 at 02:38:12PM -0500, Jed Brown wrote: $ git branch --no-merged master --merged next Yeah, sadly that does not work, as we use the same slot for the flag and store only one of the two (and we also allow

Re: [PATCH] Avoid false positives in label detection in cpp diff hunk header regex.

2013-03-23 Thread Andreas Schwab
Vadim Zeitlin vz-...@zeitlins.org writes: !^[ \t]*[A-Za-z_][A-Za-z_0-9]+[ \t]*:([^:]|$)\n That would fail to match single-character identifiers. Andreas. -- Andreas Schwab, sch...@linux-m68k.org GPG Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5 And now for something

Re: [regression?] trailing slash required in .gitattributes

2013-03-23 Thread Jeff King
On Fri, Mar 22, 2013 at 04:08:08PM -0700, Junio C Hamano wrote: Jeff King p...@peff.net writes: if (pathlen pathname[pathlen-1] == '/') pathlen--; would work. But it seems that match_basename, despite taking the length of all of the strings we pass it, will happily use

Re: Some small issues with GIT GUI on MacOS.

2013-03-23 Thread Pascal
Hello again, is there another list dealing with GIT GUI ? I'm not sure to be on the good list :-( Thanks in advance for your advice, Pascal. http://blady.pagesperso-orange.fr Le 16 mars 2013 à 10:47, Pascal p@orange.fr a écrit : Hello, I'm new to this list and using GIT on MacOS 10.8: $

Re: [PATCH v9 5/5] Speed up log -L... -M

2013-03-23 Thread Jeff King
On Sat, Mar 23, 2013 at 06:58:48AM +0100, Thomas Rast wrote: Eric Sunshine sunsh...@sunshineco.com writes: On Thu, Mar 21, 2013 at 8:52 AM, Thomas Rast tr...@student.ethz.ch wrote: This is a bit hacky and should really be replaced by equivalent support in --follow, and just using that.

Re: [PATCH] Avoid false positives in label detection in cpp diff hunk header regex.

2013-03-23 Thread Vadim Zeitlin
Andreas Schwab schwab at linux-m68k.org writes: Vadim Zeitlin vz-git at zeitlins.org writes: !^[ \t]*[A-Za-z_][A-Za-z_0-9]+[ \t]*:([^:]|$)\n That would fail to match single-character identifiers. Oops, yes, you're right, of course, sorry. I have no idea why did I write that we needed

Re: [PATCH v9a 3/5] Implement line-history search (git log -L)

2013-03-23 Thread Antoine Pelisse
diff --git a/t/t4211-line-log.sh b/t/t4211-line-log.sh new file mode 100755 index 000..286390d --- /dev/null +++ b/t/t4211-line-log.sh @@ -0,0 +1,38 @@ +#!/bin/sh + +test_description='test log -L' +. ./test-lib.sh + +test_expect_success 'setup (import history)' ' + git

Re: [PATCH v9a 3/5] Implement line-history search (git log -L)

2013-03-23 Thread Antoine Pelisse
You should probably add some failing tests I guess it should be failure tests, not failing tests. -- To unsubscribe from this list: send the line unsubscribe git in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html

[PATCH] checkout: avoid unncessary match_pathspec calls

2013-03-23 Thread Nguyễn Thái Ngọc Duy
In checkout_paths() we do this - for i = 0..active_nr, if not updated, call match_pathspec - for ..., call match_pathspec (inside unmerge_cache) - for ..., call match_pathspec (for showing path .. is unmerged) - for ..., if not updated, call match_pathspec and update paths That's a lot of

Re: [FEATURE-REQUEST] difftool --dir-diff: use the commit names as directory names instead of left/right

2013-03-23 Thread John Keeping
On Fri, Mar 22, 2013 at 09:56:17PM -0700, David Aguilar wrote: On Fri, Mar 22, 2013 at 9:52 AM, Christoph Anton Mitterer cales...@scientia.net wrote: Hi. Right now, when I use difftool --dir-diff, the temp dirs are creates as e.g.: /tmp/git-difftool.QqP8x/left

Re: [PATCH 2/3] t5521 (pull-options): use test_commit() where appropriate

2013-03-23 Thread Ramkumar Ramachandra
Junio C Hamano wrote: Ramkumar Ramachandra artag...@gmail.com writes: test_commit() is a well-defined function in test-lib-functions.sh that allows you to create commits with a terse syntax. Prefer using it over creating commits by hand. Signed-off-by: Ramkumar Ramachandra

Re: [RFC] test-lib.sh: No POSIXPERM for cygwin

2013-03-23 Thread Torsten Bögershausen
On 19.03.13 22:03, Junio C Hamano wrote: Torsten Bögershausen tbo...@web.de writes: Use a compile switch IGNORECYGWINFSTRICKS to disable the usage of cygwin_lstat_fn() only in path.c The analysis of the problem and the basic idea to disable the fast-but-lying fstricks in the code that

Re: [PATCH v2 0/6] Support triangular workflows

2013-03-23 Thread Ramkumar Ramachandra
Junio C Hamano wrote: Philip Oakley philipoak...@iee.org writes: Shouldn't Documentation/gitworkflows.txt also be updated with the triangular workflow and its configuration? What is missing from gitworkflows documentation is actually a non-triangular workflow, where people pull from and

Re: [PATCH 3/3] git-pull.sh: introduce --[no-]autostash and pull.autostash

2013-03-23 Thread Ramkumar Ramachandra
Junio C Hamano wrote: Ramkumar Ramachandra artag...@gmail.com writes: @@ -1786,6 +1786,11 @@ pull.rebase:: of merging the default branch from the default remote when git pull is run. See branch.name.rebase for setting this on a per-branch basis. + +pull.autostash:: +

Re: [BUG?] rebase -i: edit versus unmerged changes

2013-03-23 Thread Ramkumar Ramachandra
Junio C Hamano wrote: Jonathan Nieder jrnie...@gmail.com writes: Ramkumar Ramachandra wrote: I'd really to have that final 'git continue' in Git 2.0. Can someone attempt to break up the migration path into manageable logical steps that we can start working on? Is there any deadline or

Re: [PATCH 4/6] remote.c: introduce a way to have different remotes for fetch/push

2013-03-23 Thread Ramkumar Ramachandra
Junio C Hamano wrote: Jonathan Nieder jrnie...@gmail.com writes: --- a/builtin/push.c +++ b/builtin/push.c @@ -322,7 +322,7 @@ static int push_with_options(struct transport *transport, int flags) static int do_push(const char *repo, int flags) { int i, errs; -struct remote

Re: Hard reset of a subdirectory in a sparse checkout setting

2013-03-23 Thread Kirill Müller
On 03/23/2013 10:59 AM, Duy Nguyen wrote: On Fri, Mar 22, 2013 at 5:28 PM, Kirill Müller kirill.muel...@ivt.baug.ethz.ch wrote: What's the proper way to do this in Git? I think adding --sparse to git checkout may be more user-friendly. And it looks like a simple change. I'll make a patch soon

Re: [PATCH 4/6] remote.c: introduce a way to have different remotes for fetch/push

2013-03-23 Thread Ramkumar Ramachandra
Jonathan Nieder wrote: Junio C Hamano wrote: Jonathan Nieder jrnie...@gmail.com writes: - struct remote *remote = remote_get(repo); + struct remote *remote = pushremote_get(repo); struct remote has url and pushurl fields. What do they mean in the context of these two accessors? /me

[PATCH v2 0/3] difftool --dir-diff test improvements

2013-03-23 Thread John Keeping
This version fixes the actual cause of the test failure (not being specific enough when adding files). This is done with a new version of patch 2. Patch 1 is unchanged and patch 3 only contains a minor change. This is built on da/difftool-fixes. There may be a small textual conflict with

[PATCH v2 1/3] t7800: don't hide grep output

2013-03-23 Thread John Keeping
Remove the stdin_contains and stdin_doesnt_contain helper functions which add nothing but hide the output of grep, hurting debugging. Suggested-by: Johannes Sixt j.s...@viscovery.net Signed-off-by: John Keeping j...@keeping.me.uk --- t/t7800-difftool.sh | 44

[PATCH v2 2/3] t7800: fix tests when difftool uses --no-symlinks

2013-03-23 Thread John Keeping
When 'git difftool --dir-diff' is using --no-symlinks (either explicitly or implicitly because it's running on Windows), any working tree files that have been copied to the temporary directory are copied back after the difftool completes. Because an earlier test uses git add ., the output file

[PATCH v2 3/3] t7800: run --dir-diff tests with and without symlinks

2013-03-23 Thread John Keeping
Currently the difftool --dir-diff tests may or may not use symlinks depending on the operating system on which they are run. In one case this has caused a test failure to be noticed only on Windows when the test also fails on Linux when difftool is invoked with --no-symlinks. Rewrite these tests

Re: [FEATURE-REQUEST] difftool --dir-diff: use the commit names as directory names instead of left/right

2013-03-23 Thread Christoph Anton Mitterer
On Sat, 2013-03-23 at 12:36 +, John Keeping wrote: What do you all think about something like the output of git describe --always instead of the SHA-1? I think Christoph was suggesting that it should use the revision as specified by the user, presumably falling back to HEAD when only one

Bug: `gitsubmodule` does not list modules with unicode characters

2013-03-23 Thread Ilya Kulakov
The `git submodule` commands seem to ignore modules which paths contain unicode characters. Consider the following steps to reproduce the problem: 1. Create a directory with name that contains at least one unicode character (e.g. ûñïçödé-rèpø) 2. Initialize git repository within this

[PATCH] refs.c: fix fread error handling

2013-03-23 Thread John Keeping
fread returns the number of items read, with no special error return. Commit 98f85ff (reflog: add for_each_reflog_ent_reverse() API - 2013-03-08) introduced a call to fread which checks for an error with nread 0 which is tautological since nread is unsigned. The correct check in this case

[PATCH v2] combine-diff: coalesce lost lines optimally

2013-03-23 Thread Antoine Pelisse
This replaces the greedy implementation to coalesce lost lines by using dynamic programming to find the Longest Common Subsequence. The O(n²) time complexity is obviously bigger than previous implementation but it can produce shorter diff results (and most likely easier to read). List of lost

Re: [PATCH 8/4] match-trees: drop x = x initializations

2013-03-23 Thread René Scharfe
Am 22.03.2013 17:21, schrieb Jeff King: Of the 8 patches, this is the one I find the least satisfying, if only because I do not think gcc's failure is because of complicated control flow, and rearranging the code would only hurt readability. Hmm, let's see if we can help the compiler follow

Re: [PATCH 0/4] contrib/subtree: general updates

2013-03-23 Thread Paul Campbell
On Thu, Mar 14, 2013 at 3:30 AM, Junio C Hamano gits...@pobox.com wrote: Miles Bader mi...@gnu.org writes: Paul Campbell pcampb...@kemitix.net writes: James and Michael's patches add if clauses that use the bashism 'if []' rather than 'if test'. Bashism...? I dunno how portable is, but [

Re: [PATCH v2 00/45] parse_pathspec and :(glob) magic

2013-03-23 Thread Eric Sunshine
On Fri, Mar 22, 2013 at 11:13 PM, Duy Nguyen pclo...@gmail.com wrote: diff --git a/setup.c b/setup.c index e59146b..6cf2bc6 100644 --- a/setup.c +++ b/setup.c @@ -5,24 +5,37 @@ static int inside_git_dir = -1; static int inside_work_tree = -1; -char *prefix_path_gently(const char

Re: [PATCH v2] Fix revision walk for commits with the same dates

2013-03-23 Thread Eric Sunshine
On Fri, Mar 22, 2013 at 2:38 PM, Kacper Kornet drae...@pld-linux.org wrote: Logic in still_interesting function allows to stop the commits traversing if the oldest processed commit is not older then the s/then/than/ youngest commit on the list to process and the list contains only commits

Re: [PATCH] checkout: avoid unncessary match_pathspec calls

2013-03-23 Thread Eric Sunshine
On Sat, Mar 23, 2013 at 6:55 AM, Nguyễn Thái Ngọc Duy pclo...@gmail.com wrote: checkout: avoid unncessary match_pathspec calls s/unncessary/unnecessary/ In checkout_paths() we do this ... -- To unsubscribe from this list: send the line unsubscribe git in the body of a message to

Re: [RFC] test-lib.sh: No POSIXPERM for cygwin

2013-03-23 Thread Eric Sunshine
On Sat, Mar 23, 2013 at 8:40 AM, Torsten Bögershausen tbo...@web.de wrote: Subject: [PATCH] Make core.sharedRepository work under cygwin 1.7 When core.sharedRepository is used, set_shared_perm() in path.c needs lstat() to return the correct POSIX permissions. The default for cygwin is

Re: [PATCH 4/4] transport: drop int cmp = cmp hack

2013-03-23 Thread Junio C Hamano
On Thu, Mar 21, 2013 at 4:13 AM, Jeff King p...@peff.net wrote: According to 47ec794, this initialization is meant to squelch an erroneous uninitialized variable warning from gcc 4.0.1. That version is quite old at this point, and gcc 4.1 and up handle it fine, with one exception. There

Re: [PATCH 8/4] match-trees: drop x = x initializations

2013-03-23 Thread Junio C Hamano
René Scharfe rene.scha...@lsrfire.ath.cx writes: Hmm, let's see if we can help the compiler follow the code without making it harder for people to understand. The patch looks a bit jumbled, but the resulting code is OK in my biased opinion. I actually think the result is much better than a

[PATCH] checkout: add --sparse for restoring files in sparse checkout mode

2013-03-23 Thread Nguyễn Thái Ngọc Duy
git checkout -- paths is usually used to restore all modified files in paths. In sparse checkout mode, this command is overloaded with another meaning: to add back all files in paths that are excluded by sparse patterns. Add --sparse option to do what normal mode does: restore all modified files

Re: [BUG?] rebase -i: edit versus unmerged changes

2013-03-23 Thread Junio C Hamano
Ramkumar Ramachandra artag...@gmail.com writes: Junio C Hamano wrote: FWIW, I am not convinced yet why we would even want git continue in the first place, so I won't be the one who would be suggesting a migration path. Okay, I'm confused now. You were the one who suggested a unified git

Re: [PATCH v2 2/3] t7800: fix tests when difftool uses --no-symlinks

2013-03-23 Thread Junio C Hamano
John Keeping j...@keeping.me.uk writes: When 'git difftool --dir-diff' is using --no-symlinks (either explicitly or implicitly because it's running on Windows), any working tree files that have been copied to the temporary directory are copied back after the difftool completes. Because an

Re: [regression?] trailing slash required in .gitattributes

2013-03-23 Thread Junio C Hamano
Jeff King p...@peff.net writes: Yeah, that is a possibility, though it involves casting away some constness. Patch is below, which seems to work. Hmm, because this was after I read this part: ... match_basename, despite taking the length of all of the strings we pass it, will happily use

Re: [PATCH] status, branch: fix the misleading bisecting message

2013-03-23 Thread Junio C Hamano
Nguyễn Thái Ngọc Duy pclo...@gmail.com writes: The current message is bisecting %s (or bisecting branch %s). %s is the current branch when we started bisecting. Clarify that to avoid confusion with good and bad refs passed to bisect command. Signed-off-by: Nguyễn Thái Ngọc Duy