Re: [PATCH] bisect: Store first bad commit as comment in log file

2013-04-15 Thread Junio C Hamano
Torstein Hegge he...@resisty.net writes: When bisect successfully finds a single revision, the first bad commit should be shown to human readers of 'git bisect log'. This resolves the apparent disconnect between the bisection result and the log when a bug reporter says I know that the first

Re: [RFC/PATCH] push: introduce implicit push

2013-04-15 Thread Johannes Sixt
Am 4/15/2013 5:04, schrieb Junio C Hamano: Ramkumar Ramachandra artag...@gmail.com writes: ... In my proposal, the precedence order branch.name.pushremote, remote.pushdefault, branch.name.remote, remote.default, origin, remains the same: we just want to change which branch that name refers

Re: [RFC/PATCH] push: introduce implicit push

2013-04-15 Thread Junio C Hamano
Johannes Sixt j.s...@viscovery.net writes: User says: git push -- master docs release Then git pushes the three branches to three different upstreams. You find that confusing. Do I understanding correctly so far? It is far more subtle than that. User says that while on 'next' branch.

No What's cooking yet, but...

2013-04-15 Thread Junio C Hamano
I've merged a handful more topics to 'next'. It is likely that I'll be merging kb/status-ignored-optim to 'master' soonish, but as I kept saying this topic touches rather core part of working tree inspection code, so a fallout from it may affect not just status -uvarious but more destructive add,

Re: Ensimag students projects, version 2013

2013-04-15 Thread Matthieu Moy
Ping Yin pkufra...@gmail.com writes: 15 git rebase --stash, git pull --rebase --stash It seems that Ramkumar Ramachandra is working on this in his [PATCH v2 0/3] Introduce pull.autostash series Ping Yin Ah, cool! Added a note to the wiki, thanks, -- Matthieu Moy

Re: [RFC/PATCH] clone: introduce clone.submoduleGitDir to relocate $GITDIR

2013-04-15 Thread Ramkumar Ramachandra
Junio C Hamano wrote: Relocate to where in the superproject's gitdir? Presumably you can do this more than once in a given superproject, so there needs to be a key per such a clone, no? I am guessing that you would follow the usual when adding a submodule without name, use its path as the

Re: [RFC/PATCH] clone: introduce clone.submoduleGitDir to relocate $GITDIR

2013-04-15 Thread Ramkumar Ramachandra
You could continue git clone and then teach git add (or git submodule add) to relocate the embedded git directory from the submodule working tree, you could git clone with separate-git-dir from the beginning, or you could extend git add, perhaps git add --url=git://up.stre.am/repository

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

2013-04-15 Thread Matthieu Moy
Ramkumar Ramachandra artag...@gmail.com writes: +stash_required () { + ! (git diff-files --quiet --ignore-submodules + git diff-index --quiet --cached HEAD --ignore-submodules) +} Isn't this too pessimistic? If the local changes do not overlap (in terms of files) with the pulled

Re: [RFC/PATCH] clone: introduce clone.submoduleGitDir to relocate $GITDIR

2013-04-15 Thread Ramkumar Ramachandra
Junio C Hamano wrote: Any new configuration variable brings its own problem by forcing existing users to countermand it explicitly from the command line. If the --separate-git-dir would not work for your application, you need a new feature and you can achieve the same by adding a new command

Re: [RFC/PATCH] push: introduce implicit push

2013-04-15 Thread John Keeping
On Mon, Apr 15, 2013 at 12:20:32AM -0700, Junio C Hamano wrote: Johannes Sixt j.s...@viscovery.net writes: User says: git push -- master docs release Then git pushes the three branches to three different upstreams. You find that confusing. Do I understanding correctly so far?

Re: [PATCH v3] cherry-pick: make sure all input objects are commits

2013-04-15 Thread Thomas Rast
Miklos Vajna vmik...@suse.cz writes: Fix this bug and make sure all arguments are commits, and for the first non-commit, error out with: fatal: name: Can't cherry-pick a type @@ -1067,6 +1068,23 @@ int sequencer_pick_revisions(struct replay_opts *opts) if (opts-subcommand ==

Re: Ensimag students projects, version 2013

2013-04-15 Thread Thomas Rast
Matthieu Moy matthieu@grenoble-inp.fr writes: https://git.wiki.kernel.org/index.php/SmallProjectsIdeas My $0.02: * Allow git add -p to use git diff --color-words to show hunks Check if you can use the existing --word-diff=porcelain output somehow to get it done in pure perl.

Re: [RFC/PATCH] push: introduce implicit push

2013-04-15 Thread Ramkumar Ramachandra
John Keeping wrote: I may be an atypical user, but my expectation currently is that branch.name.remote is what is used when I run git push with no additional arguments. This is probably because whenever I add additional arguments (currently) I have to specify where I am pushing to. So I

Re: Ensimag students projects, version 2013

2013-04-15 Thread Matthieu Moy
Thomas Rast tr...@inf.ethz.ch writes: My $0.02: (BTW, feel free to edit the wiki. I've added a few bits from your message there already). * Allow git add -p to use git diff --color-words to show hunks [...] If neither one is possible my feeling is that it's one of the hardest tasks on

Re: [RFC/PATCH] clone: introduce clone.submoduleGitDir to relocate $GITDIR

2013-04-15 Thread Duy Nguyen
On Mon, Apr 15, 2013 at 6:19 PM, Ramkumar Ramachandra artag...@gmail.com wrote: It doesn't make sense as a command-line option, because it is magic that kicks in only when git clone is executed inside an existing git worktree. The point is that the user doesn't have to remember anything

Re: [RFC/PATCH] push: introduce implicit push

2013-04-15 Thread Junio C Hamano
John Keeping j...@keeping.me.uk writes: I may be an atypical user, but my expectation currently is that branch.name.remote is what is used when I run git push with no additional arguments. This is probably because whenever I add additional arguments (currently) I have to specify where I am

Re: [RFC/PATCH] push: introduce implicit push

2013-04-15 Thread Ramkumar Ramachandra
Junio C Hamano wrote: That changing the meaning of name in the middle, and doing so will be confusing to the users, is exactly the issue, isn't it? Yes, but we have to change _something_ if we don't want to hit a WTF like 'git push master next' pushing master and next to branch.HEAD.pushremote.

Re: Ensimag students projects, version 2013

2013-04-15 Thread John Keeping
On Mon, Apr 15, 2013 at 11:24:21AM +0200, Matthieu Moy wrote: Thomas Rast tr...@inf.ethz.ch writes: * Allow git send-email --cc 'f...@example.com, b...@example.com' instead of git send-email --cc f...@example.com --cc b...@example.com That would be really nice. Bonus points if it

Re: [RFC/PATCH] push: introduce implicit push

2013-04-15 Thread Ramkumar Ramachandra
Junio C Hamano wrote: I do not think it is a red-herring at all. It is not about breaking, but there will be multiple, conflicting and equally plausible expectations that makes me worry about unnecessary confusion. Well put. My solution to the problem is to take one of the three

Re: [RFC/PATCH] clone: introduce clone.submoduleGitDir to relocate $GITDIR

2013-04-15 Thread Junio C Hamano
Ramkumar Ramachandra artag...@gmail.com writes: Junio C Hamano wrote: Any new configuration variable brings its own problem by forcing existing users to countermand it explicitly from the command line. If the --separate-git-dir would not work for your application, you need a new feature and

Re: [RFC/PATCH] push: introduce implicit push

2013-04-15 Thread John Keeping
On Mon, Apr 15, 2013 at 02:47:35PM +0530, Ramkumar Ramachandra wrote: John Keeping wrote: I may be an atypical user, but my expectation currently is that branch.name.remote is what is used when I run git push with no additional arguments. This is probably because whenever I add

Re: [RFC/PATCH] clone: introduce clone.submoduleGitDir to relocate $GITDIR

2013-04-15 Thread Ramkumar Ramachandra
Duy Nguyen wrote: If a user is inside .git, I believe setup_git_directory() will also find correct gitdir. In that case, we do not want magic (i.e. only do your magic when you are inside worktree). Still I'd rather see no magic (i.e. command line option) first. Let people try it out for a

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

2013-04-15 Thread Junio C Hamano
Matthieu Moy matthieu@grenoble-inp.fr writes: Ramkumar Ramachandra artag...@gmail.com writes: +stash_required () { +! (git diff-files --quiet --ignore-submodules +git diff-index --quiet --cached HEAD --ignore-submodules) +} Isn't this too pessimistic? If the local changes do

Re: [PATCH] bisect: Store first bad commit as comment in log file

2013-04-15 Thread Torstein Hegge
On Mon, Apr 15, 2013 at 06:38:09 +0200, Christian Couder wrote: I wonder if we should also write something into the bisect log if for example the bisection stopped because there are only 'skip'ped commits left to test. But maybe this could go into another patch after this one. Yes, that would

Re: [PATCH v2 09/12] pretty: add %C(auto) for auto-coloring on the next placeholder

2013-04-15 Thread Duy Nguyen
On Sat, Apr 6, 2013 at 4:13 AM, Junio C Hamano gits...@pobox.com wrote: If %C(auto) applies to some %placeholder but not to some others, the user needs to learn which %placeholder will eat the auto (so it no longer applies to the next one) and which one will not even look at auto (so the next

Re: [RFC/PATCH] push: introduce implicit push

2013-04-15 Thread John Keeping
On Mon, Apr 15, 2013 at 02:29:29AM -0700, Junio C Hamano wrote: - Your branch.*.remote only kicks in when I do not say either what to push or where to push to, so 'git push -- master' won't be affected could be one valid natural extension to your knowledge the config only kicks in

Re: [RFC/PATCH] clone: introduce clone.submoduleGitDir to relocate $GITDIR

2013-04-15 Thread Junio C Hamano
Ramkumar Ramachandra artag...@gmail.com writes: I specifically did not go down this route, because I think it is gross. Where does moving a GITDIR fit into what git add's normal job (index manipulation) is? Tools should do one specific thing, and do it well: not a mixed bag of unrelated

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

2013-04-15 Thread Matthieu Moy
Junio C Hamano gits...@pobox.com writes: Yes, that is why I said for pull-merge, --authsquash is neutral-to-better and pull.autosquash is harmful. To speak from my experience: I find myself typing git stash git pull git stash pop relatively often. Typical use-case: I start working on

Re: [RFC/PATCH] clone: introduce clone.submoduleGitDir to relocate $GITDIR

2013-04-15 Thread Ramkumar Ramachandra
Junio C Hamano wrote: When we discuss git add, the one unit of work is at much higher level than that of git update-index. git add dir/ has to do a lot more than git add file, and git add symlink has to do quite a different thing from git add file, but to the end user, all of them are about

Re: Ensimag students projects, version 2013

2013-04-15 Thread Duy Nguyen
On Mon, Apr 15, 2013 at 7:06 PM, Thomas Rast tr...@inf.ethz.ch wrote: Matthieu Moy matthieu@grenoble-inp.fr writes: https://git.wiki.kernel.org/index.php/SmallProjectsIdeas My $0.02: * Allow git add -p to use git diff --color-words to show hunks Check if you can use the existing

Re: [RFC/PATCH] clone: introduce clone.submoduleGitDir to relocate $GITDIR

2013-04-15 Thread Ramkumar Ramachandra
Junio C Hamano wrote: When you add a submodule with the current system, bypassing git submodule add, you can either (1) git clone $URL here and then git add here; or (2) git init here and then git add here. Because you didn't say what you are aiming for in the grander picture, I

Re: [PATCH v3] branch: colour upstream branches

2013-04-15 Thread Duy Nguyen
On Mon, Apr 15, 2013 at 12:37 PM, Felipe Contreras felipe.contre...@gmail.com wrote: @@ -417,36 +421,54 @@ static void fill_tracking_info(struct strbuf *stat, const char *branch_name, int ours, theirs; char *ref = NULL; struct branch *branch = branch_get(branch_name);

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

2013-04-15 Thread Ramkumar Ramachandra
Junio C Hamano wrote: In the end, simple cases (the canonical example being Linus keeping a local change to Name = Unicycling Gorilla in his Makefile while running dozens of git pull every day) would not be helped with this feature very much because there is rarely overlap, while in a complex

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

2013-04-15 Thread Ramkumar Ramachandra
Matthieu Moy wrote: Isn't this too pessimistic? If the local changes do not overlap (in terms of files) with the pulled changes, then autosquash is not needed. There should be a test for the case of non-overlapping changes. In the pull-rebase case, no; it is not too pessimistic. In the

Re: Ensimag students projects, version 2013

2013-04-15 Thread Jeff King
On Mon, Apr 15, 2013 at 11:24:21AM +0200, Matthieu Moy wrote: * git pull --set-upstream This is vaguely related to another itch that nobody has bothered to fix: 'git fetch origin foo' should really update origin/foo. This has been discussed on the list a few times already:

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

2013-04-15 Thread Ramkumar Ramachandra
Matthieu Moy wrote: I disagree. A configuration option is something you set once, and then forget about. A command, or a command-line option, is something you explicitely add when you need it. You're making it out to be a much bigger difference than it actually is. Users will simply alias

Re: Ensimag students projects, version 2013

2013-04-15 Thread Junio C Hamano
Jeff King p...@peff.net writes: On Mon, Apr 15, 2013 at 11:24:21AM +0200, Matthieu Moy wrote: * git pull --set-upstream This is vaguely related to another itch that nobody has bothered to fix: 'git fetch origin foo' should really update origin/foo. This has been discussed on

Re: [PATCH] bisect: Store first bad commit as comment in log file

2013-04-15 Thread Junio C Hamano
Torstein Hegge he...@resisty.net writes: I was wondering why git grep show-ref *.sh gave so few users. It looks like rev-parse is more common. It is primarily because show-ref is slightly newer. When you have a full refname (e.g. refs/bisect/bad) and not an arbitrary object name that is

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

2013-04-15 Thread Ramkumar Ramachandra
Ramkumar Ramachandra wrote: Okay, so you're proposing a uniform --autostash feature for both merge and rebase. Sorry, I didn't get it last time due to the typos in your email; yeah, this is worth investigating. So, I thought about this and have concluded that pull is the Right place for

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

2013-04-15 Thread Junio C Hamano
Ramkumar Ramachandra artag...@gmail.com writes: Junio C Hamano wrote: In the end, simple cases (the canonical example being Linus keeping a local change to Name = Unicycling Gorilla in his Makefile while running dozens of git pull every day) would not be helped with this feature very much

Re: Ensimag students projects, version 2013

2013-04-15 Thread Ramkumar Ramachandra
A few small personal itches off the top of my head: - Make git status -s show state status as well: this essentially requires writing an equivalent of wt_status_print_state() for use in wt_shortstatus_print(). - Make the -s and -b switches in git status configuration variables. I currently have

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

2013-04-15 Thread Junio C Hamano
Matthieu Moy matthieu@grenoble-inp.fr writes: I think you're taking it the wrong way. You seem to insist that autostash should be a pull feature. I think it should be a feature of merge and rebase, and the convenience script git pull should expose them to the user. I see no reason to

Re: Ensimag students projects, version 2013

2013-04-15 Thread Junio C Hamano
Ramkumar Ramachandra artag...@gmail.com writes: - Make the -3 and -c switches in git am configuration variables. I have an alias. - Make failed git am --3way due to unusable index a bit more helpful. Right now, the information on which hunk failed to apply is lost, and there is no git

Re: [BUG] git-clone fails due to GnuTLS recv error (-9), then deletes entire local repo

2013-04-15 Thread Tay Ray Chuan
On Fri, Feb 1, 2013 at 5:00 PM, TJ g...@iam.tj wrote: Using Ubuntu Precise 12.04 with git version (1.8.0.3) I discovered a bug whereby git-clone deletes the repository it has just created if there is a GnuTLS error after the final transfer. I switched to building and using the current git

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

2013-04-15 Thread Matthieu Moy
Ramkumar Ramachandra artag...@gmail.com writes: Matthieu Moy wrote: AFAICT, git merge --abort is an alias for git reset --merge Yes, that is correct. which was precisely designed to reset only modifications comming from a merge, and not the local changes that were present before the merge

Re: [PATCH v1 23/45] check-ignore: convert to use parse_pathspec

2013-04-15 Thread Adam Spiers
On Mon, Apr 15, 2013 at 09:48:22AM +1000, Duy Nguyen wrote: On Mon, Apr 15, 2013 at 9:25 AM, Adam Spiers g...@adamspiers.org wrote: The introduction of argc also makes it possible to invoke check_ignore() with arguments which are not self-consistent. This is the same problem with main()

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

2013-04-15 Thread Matthieu Moy
Ramkumar Ramachandra artag...@gmail.com writes: Matthieu Moy wrote: I disagree. A configuration option is something you set once, and then forget about. A command, or a command-line option, is something you explicitely add when you need it. You're making it out to be a much bigger

[PATCH/RFC] l10n: de.po: translate 39 new messages

2013-04-15 Thread Ralf Thielow
Translate 39 new messages came from git.pot update in c138af5 (l10n: git.pot: v1.8.3 round 1 (54 new, 15 removed)). Signed-off-by: Ralf Thielow ralf.thie...@gmail.com --- po/de.po | 186 +-- 1 file changed, 97 insertions(+), 89

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

2013-04-15 Thread Junio C Hamano
Matthieu Moy matthieu@grenoble-inp.fr writes: Ramkumar Ramachandra artag...@gmail.com writes: Matthieu Moy wrote: AFAICT, git merge --abort is an alias for git reset --merge Yes, that is correct. which was precisely designed to reset only modifications comming from a merge, and not

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

2013-04-15 Thread Ramkumar Ramachandra
Junio C Hamano wrote: By tempting the user to use autostash first, you are forcing the user to say reset --hard (the first one), ORIG_HEAD (to start from the pre-pull state), stash pop (to recover the autostashed WIP), to a user who got conflict during stash pop after the pull integrated the

Re: Ensimag students projects, version 2013

2013-04-15 Thread Matthieu Moy
Ramkumar Ramachandra artag...@gmail.com writes: A few small personal itches off the top of my head: - Make git status -s show state status as well: this essentially requires writing an equivalent of wt_status_print_state() for use in wt_shortstatus_print(). Do you mean, showing it in a

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

2013-04-15 Thread Ramkumar Ramachandra
Junio C Hamano wrote: git-rebase --autostash git commit --allow-empty -m 'index part' git commit --allow-empty -a -m 'working tree part' git rebase --onto $UPSTREAM git reset HEAD^ git reset --soft HEAD^

Re: [RFC/PATCH] push: introduce implicit push

2013-04-15 Thread Felipe Contreras
On Mon, Apr 15, 2013 at 4:59 AM, John Keeping j...@keeping.me.uk wrote: So the question is what is the natural extension of the current behaviour?, and the answer for me is it's completely new, but others have different (and conflicting) internal models that give different answers. I don't

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

2013-04-15 Thread Ramkumar Ramachandra
Matthieu Moy wrote: No, you don't. Just try if you're not convinced: Oh, I trusted the documentation on this one and never tried with a dirty worktree myself. Please fix the documentation, if you know how exactly to correct it. No, I'm not proposing to do anything for merge. There's no reason

Re: [PATCH 10/33] refs: extract a function ref_resolves_to_object()

2013-04-15 Thread Junio C Hamano
Michael Haggerty mhag...@alum.mit.edu writes: It is a nice unit of work and soon will be needed from multiple locations. Signed-off-by: Michael Haggerty mhag...@alum.mit.edu --- refs.c | 28 1 file changed, 20 insertions(+), 8 deletions(-) diff --git

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

2013-04-15 Thread Ramkumar Ramachandra
Matthieu Moy wrote: No, they don't. Git forbids redefining commands with aliases. They may have an alias like git pullauto or so, but not git pull. Ofcourse, but you get the point. I use p for push, and pu for pull myself. There's not much we can do about it now, as Git cannot guess whether

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

2013-04-15 Thread John Keeping
On Mon, Apr 15, 2013 at 10:15:54PM +0530, Ramkumar Ramachandra wrote: Junio's criticism of pull.autostash hurting pull-merge people is cogent; my current plan is to ditch pull.autostash altogether, and implement rebase.autostash for the reduced case of a non-interactive rebase. Why restrict

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

2013-04-15 Thread Ramkumar Ramachandra
John Keeping wrote: Why restrict it to non-interactive? I'd find it useful when doing interactive rebases as well - consider the case when you simply want to re-order some commits. Actually, I made a mistake: it should be doable for any specific rebase (includes rebase--interactive,

Re: [RFC/PATCH] push: introduce implicit push

2013-04-15 Thread John Keeping
On Mon, Apr 15, 2013 at 11:39:40AM -0500, Felipe Contreras wrote: On Mon, Apr 15, 2013 at 4:59 AM, John Keeping j...@keeping.me.uk wrote: So the question is what is the natural extension of the current behaviour?, and the answer for me is it's completely new, but others have different

Re: [RFC/PATCH] push: introduce implicit push

2013-04-15 Thread Felipe Contreras
On Mon, Apr 15, 2013 at 12:13 PM, John Keeping j...@keeping.me.uk wrote: On Mon, Apr 15, 2013 at 11:39:40AM -0500, Felipe Contreras wrote: On Mon, Apr 15, 2013 at 4:59 AM, John Keeping j...@keeping.me.uk wrote: So the question is what is the natural extension of the current behaviour?, and

Re: [PATCH 03/33] refs: document do_for_each_ref() and do_one_ref()

2013-04-15 Thread Junio C Hamano
Michael Haggerty mhag...@alum.mit.edu writes: Signed-off-by: Michael Haggerty mhag...@alum.mit.edu --- refs.c | 13 - 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/refs.c b/refs.c index 1df1ccd..f503ec4 100644 --- a/refs.c +++ b/refs.c @@ -525,10 +525,14 @@

Re: [PATCH 12/33] peel_object(): give more specific information in return value

2013-04-15 Thread Junio C Hamano
Michael Haggerty mhag...@alum.mit.edu writes: Instead of just returning a success/failure bit, return an enumeration value that explains the reason for any failure. This will come in handy shortly. Signed-off-by: Michael Haggerty mhag...@alum.mit.edu --- This is a valid rewrite because

Re: [PATCH 13/33] peel_ref(): fix return value for non-peelable, not-current reference

2013-04-15 Thread Junio C Hamano
Michael Haggerty mhag...@alum.mit.edu writes: The old version was inconsistent: when a reference was REF_KNOWS_PEELED but with a null peeled value, it returned non-zero for the current reference but zero for other references. Change the behavior for non-current references to match that of

Re: [PATCH 14/33] refs: extract a function peel_entry()

2013-04-15 Thread Junio C Hamano
Michael Haggerty mhag...@alum.mit.edu writes: if (read_ref_full(refname, base, 1, flag)) return -1; - if ((flag REF_ISPACKED)) { + /* + * If the reference is packed, read its ref_entry from the + * cache in the hope that we already know its peeled

Re: [PATCH 15/33] refs: change the internal reference-iteration API

2013-04-15 Thread Junio C Hamano
Michael Haggerty mhag...@alum.mit.edu writes: Establish an internal API for iterating over references, which gives the callback functions direct access to the ref_entry structure describing the reference. (Do not change the iteration API that is exposed outside of the module.) Define a new

Re: [PATCH 16/33] t3210: test for spurious error messages for dangling packed refs

2013-04-15 Thread Junio C Hamano
Michael Haggerty mhag...@alum.mit.edu writes: A packed reference can be overridden by a loose reference, in which case the packed reference is obsolete and is never used. The object pointed to by such a reference can be garbage collected. Since d66da478f2, this could lead to the emission of

Re: [PATCH 17/33] repack_without_ref(): silence errors for dangling packed refs

2013-04-15 Thread Junio C Hamano
Michael Haggerty mhag...@alum.mit.edu writes: Stop emitting an error message for dangling packed references found when deleting another packed reference. See the previous commit for a longer explanation of the issue. Change repack_without_ref_fn() to silently ignore dangling packed

Re: [PATCH 21/33] repack_without_ref(): write peeled refs in the rewritten file

2013-04-15 Thread Junio C Hamano
Michael Haggerty mhag...@alum.mit.edu writes: When a reference that existed in the packed-refs file is deleted, the packed-refs file must be rewritten. Previously, the file was rewritten without any peeled refs, even if the file contained peeled refs when it was read. This was not a bug,

Re: [PATCH 32/33] refs: change do_for_each_*() functions to take ref_cache arguments

2013-04-15 Thread Junio C Hamano
Michael Haggerty mhag...@alum.mit.edu writes: Change the callers convert submodule names into ref_cache pointers. Signed-off-by: Michael Haggerty mhag...@alum.mit.edu --- A nice cleanup. -- To unsubscribe from this list: send the line unsubscribe git in the body of a message to

[PATCH v3 0/4] Some small fixes to glossary-content.txt

2013-04-15 Thread Thomas Ackermann
This is another reroll of my patches for glossary-content.txt. - The first patch is the same as in v2. - The second patch only adds the log message which Junio suggested and a missing full stop. - The third patch is new and is a direct consequence of the second patch. - In the fourth patch there

[PATCH v3 1/4] glossary: remove outdated/misleading/irrelevant entries

2013-04-15 Thread Thomas Ackermann
Signed-off-by: Thomas Ackermann th.ac...@arcor.de --- Documentation/glossary-content.txt | 11 +-- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/Documentation/glossary-content.txt b/Documentation/glossary-content.txt index eb7ba84..5a7a486 100644 ---

[PATCH v3 2/4] glossary: improve description of SHA-1 related topics

2013-04-15 Thread Thomas Ackermann
The name of the hash function is SHA-1, not SHA1. Also to people who look up object name in the glossary, the details of which hash function is applied on what to compute object name is not important but the fact that the name is meant to be an unique identifier for the contents stored in the

[PATCH v3 3/4] The name of the hash function is SHA-1, not SHA1

2013-04-15 Thread Thomas Ackermann
Use SHA-1 instead of SHA1 whenever we talk about the hash function. When used as a programming symbol, we keep SHA1. Signed-off-by: Thomas Ackermann th.ac...@arcor.de --- Documentation/config.txt | 2 +- Documentation/git-cat-file.txt| 6

[PATCH v3 4/4] glossary: improve definitions of refspec and pathspec

2013-04-15 Thread Thomas Ackermann
The exact definition of refspec can be found in git-fetch and git-push manpages. So don't duplicate this here in the glossary. Actually the definition of pathspec should be moved to a separate file akin to the way it's done with refspec. But this will only be wortwhile when there's more to say

Re: [RFC/PATCH] clone: introduce clone.submoduleGitDir to relocate $GITDIR

2013-04-15 Thread Junio C Hamano
Marc Branchaud mbranch...@xiplink.com writes: In general I think it is a mistake to overload git clone with the notion of adding a submodule. I agree with that principle, but my understanding is that this effort is not about teaching git clone to create a submodule. Both git clone and git

Re: [RFC/PATCH] clone: introduce clone.submoduleGitDir to relocate $GITDIR

2013-04-15 Thread Ramkumar Ramachandra
Marc Branchaud wrote: git add ssh://host/blammo.git Heh. And I want git add *coffee* to make me coffee. What's your gripe with git submodule add? I could have ~/.git/ to maintain revisions of various personal files, config .dotfiles, scripts in ~/bin/ and so on. [...]

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

2013-04-15 Thread Junio C Hamano
Ramkumar Ramachandra artag...@gmail.com writes: Junio C Hamano wrote: git-rebase --autostash git commit --allow-empty -m 'index part' git commit --allow-empty -a -m 'working tree part' git rebase --onto $UPSTREAM git

Re: State of CVS-to-git conversion tools (Was: Re: cvsps: bad usage: invalid argument --norc)

2013-04-15 Thread Ilya Basin
Hi Eric. I tried --fast-export. It's 2 times faster. The first thing that differs: in cvsps2 commits with adjacent timestamps were joined into one (see the attached files). Do you know the reason? Does this --fast-export thing support what John mentioned, the incremental import support? Does

Re: [RFC/PATCH] clone: introduce clone.submoduleGitDir to relocate $GITDIR

2013-04-15 Thread Ramkumar Ramachandra
Junio C Hamano wrote: My understanding is that this config is about making that option easier to use when you _know_ any new repository you create with git clone or git init inside your (toplevel super)project's working tree will become its submodule, as it is more convenient to have their

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

2013-04-15 Thread Ramkumar Ramachandra
Junio C Hamano wrote: If rebase -m were to be taught to do this, the natural way to do so is to (1) Prepare the todo the usual way (2) Do those two commits for index and working tree (3) Append two insns (exec reset HEAD^ and exec reset --soft HEAD^) at the end of the rebase

Re: [PATCH v3 4/4] glossary: improve definitions of refspec and pathspec

2013-04-15 Thread Junio C Hamano
Thomas Ackermann th.ac...@arcor.de writes: fix the idendation of the first paragraph after the bullet list That's indentation, I think, and is a good fix. and remove the one-item list of magic signatures with its - for the user - unnecessary introduction of magic word 'top'. But I do not

Re: [PATCH v3 1/4] glossary: remove outdated/misleading/irrelevant entries

2013-04-15 Thread Junio C Hamano
Thomas Ackermann th.ac...@arcor.de writes: Signed-off-by: Thomas Ackermann th.ac...@arcor.de --- Looks sensible. Thanks. Documentation/glossary-content.txt | 11 +-- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/Documentation/glossary-content.txt

Re: [PATCH v3 3/4] The name of the hash function is SHA-1, not SHA1

2013-04-15 Thread Junio C Hamano
Thomas Ackermann th.ac...@arcor.de writes: Use SHA-1 instead of SHA1 whenever we talk about the hash function. When used as a programming symbol, we keep SHA1. Signed-off-by: Thomas Ackermann th.ac...@arcor.de --- Thanks. Will queue as-is for now, but I wonder if we want to fix them to

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

2013-04-15 Thread John Keeping
On Mon, Apr 15, 2013 at 11:38:20PM +0530, Ramkumar Ramachandra wrote: Junio C Hamano wrote: If rebase -m were to be taught to do this, the natural way to do so is to (1) Prepare the todo the usual way (2) Do those two commits for index and working tree (3) Append two insns (exec

Re: [PATCH v3] cherry-pick: make sure all input objects are commits

2013-04-15 Thread Junio C Hamano
Thomas Rast tr...@inf.ethz.ch writes: From a cursory glance it looks like it's actually an existing bug in read_revisions_from_stdin or handle_revision_arg, depending on which way you look at it. read_revisions_from_stdin passes its temporary buffer down to handle_revision_arg:

Aw: Re: [PATCH v3 4/4] glossary: improve definitions of refspec and pathspec

2013-04-15 Thread Thomas Ackermann
But I do not know if the description of the longhand :(top) is unnecessary for the user. Is the equivalence between it and :/ described anywhere else in our documentation set? The only complete documentation for all of this is in setup.c and I must confess that I missed the subtle

Re: [RFC/PATCH] clone: introduce clone.submoduleGitDir to relocate $GITDIR

2013-04-15 Thread Jeff King
On Mon, Apr 15, 2013 at 11:30:40PM +0530, Ramkumar Ramachandra wrote: Junio C Hamano wrote: My understanding is that this config is about making that option easier to use when you _know_ any new repository you create with git clone or git init inside your (toplevel super)project's

Re: [RFC/PATCH] clone: introduce clone.submoduleGitDir to relocate $GITDIR

2013-04-15 Thread Junio C Hamano
Marc Branchaud marcn...@xiplink.com writes: After that clone or init creates a repository, you still have to add if you want to make it a submodule to the toplevel. To me it makes more sense to move the .git directory when the user invokes git submodule add instead of creating it in an

Re: [RFC/PATCH] clone: introduce clone.submoduleGitDir to relocate $GITDIR

2013-04-15 Thread Marc Branchaud
On 13-04-15 02:00 PM, Ramkumar Ramachandra wrote: Junio C Hamano wrote: I do not think the addition Ram is envisioning in the patch will prevent you from teaching add to do that. An implemention of such an addition indeed would most likely use the same --separate-git-dir mechanism anyway.

Re: [RFC/PATCH] clone: introduce clone.submoduleGitDir to relocate $GITDIR

2013-04-15 Thread Marc Branchaud
On 13-04-15 01:50 PM, Junio C Hamano wrote: Marc Branchaud mbranch...@xiplink.com writes: In general I think it is a mistake to overload git clone with the notion of adding a submodule. I agree with that principle, but my understanding is that this effort is not about teaching git clone

[PATCH v2 00/14] Improve git-status --ignored

2013-04-15 Thread Karsten Blees
This patch series addresses several bugs and performance issues in .gitignore processing. Patches #1 - #6 fix bugs and add appropriate test cases. Patch #7 changes handling of ignored tracked directories, as I discovered that with the current bahavior git-clean can delete tracked content.

[PATCH v2 01/14] dir.c: git-status --ignored: don't drop ignored directories

2013-04-15 Thread Karsten Blees
'git-status --ignored' drops ignored directories if they contain untracked files in an untracked sub directory. Fix it by getting exact (recursive) excluded status in treat_directory. Signed-off-by: Karsten Blees bl...@dcon.de --- dir.c | 9 +

[PATCH v2 02/14] dir.c: git-status --ignored: don't list files in ignored directories

2013-04-15 Thread Karsten Blees
'git-status --ignored' lists both the ignored directory and the ignored files if the files are in a tracked sub directory. When recursing into sub directories in read_directory_recursive, pass on the check_only parameter so that we don't accidentally add the files. Signed-off-by: Karsten Blees

[PATCH v2 03/14] dir.c: git-status --ignored: don't list empty ignored directories

2013-04-15 Thread Karsten Blees
'git-status --ignored' lists ignored tracked directories without any ignored files if a tracked file happens to match an exclude pattern. Always exclude tracked files. Signed-off-by: Karsten Blees bl...@dcon.de --- dir.c | 11 --- t/t7061-wtstatus-ignore.sh | 24

[PATCH v2 04/14] dir.c: git-ls-files --directories: don't hide empty directories

2013-04-15 Thread Karsten Blees
'git-ls-files --ignored --directories' hides empty directories even though --no-empty-directory was not specified. Treat the DIR_HIDE_EMPTY_DIRECTORIES flag independently from DIR_SHOW_IGNORED to make all git-ls-files options work as expected. Signed-off-by: Karsten Blees bl...@dcon.de ---

[PATCH v2 05/14] dir.c: git-status --ignored: don't list empty directories as ignored

2013-04-15 Thread Karsten Blees
'git-status --ignored' lists empty untracked directories as ignored, even though they don't have any ignored files. When checking if a directory is already listed as untracked (i.e. shouldn't be listed as ignored as well), don't assume that the directory has only ignored files if it doesn't have

[PATCH v2 06/14] dir.c: make 'git-status --ignored' work within leading directories

2013-04-15 Thread Karsten Blees
'git-status --ignored path/' doesn't list ignored files and directories within 'path' if some component of 'path' is classified as untracked. Disable the DIR_SHOW_OTHER_DIRECTORIES flag while traversing leading directories. This prevents treat_leading_path() with DIR_SHOW_IGNORED flag from

[PATCH v2 07/14] dir.c: git-clean -d -X: don't delete tracked directories

2013-04-15 Thread Karsten Blees
The notion of ignored tracked directories introduced in 721ac4ed dir.c: Make git-status --ignored more consistent has a few unwanted side effects: - git-clean -d -X: deletes ignored tracked directories. git-clean should never delete tracked content. - git-ls-files --ignored --other

[PATCH v2 08/14] dir.c: factor out parts of last_exclude_matching for later reuse

2013-04-15 Thread Karsten Blees
Signed-off-by: Karsten Blees bl...@dcon.de --- dir.c | 36 ++-- 1 file changed, 22 insertions(+), 14 deletions(-) diff --git a/dir.c b/dir.c index f10fb69..594307c 100644 --- a/dir.c +++ b/dir.c @@ -751,6 +751,26 @@ int is_excluded_from_list(const char *pathname,

[PATCH v2 09/14] dir.c: move prep_exclude

2013-04-15 Thread Karsten Blees
Move prep_exclude in preparation for the next patch. Signed-off-by: Karsten Blees bl...@dcon.de --- dir.c | 144 +- 1 file changed, 72 insertions(+), 72 deletions(-) diff --git a/dir.c b/dir.c index 594307c..fcb3def 100644 ---

  1   2   >