Re: [PATCH] Avoid invoking diff drivers during git-stash
From: Shawn O. Pearce <hidden>
Date: 2016-06-15 22:43:43
Johannes Sixt [off-list ref] wrote:
Shawn O. Pearce schrieb:quoted
Johannes Sixt [off-list ref] wrote:quoted
(1) Looking at git-stash.sh I see a few uses of 'git diff' in apply_stash(). Shouldn't these use one of git-diff-{tree,index,files)?Thequoted
reason is that porcelain 'git diff' invokes custom diff drivers (thatin my > case run a UI program), whereas the plumbing does not.quoted
Is there a particular reason to use porcelain 'git diff'?Does this fix the problem?It does!quoted
@@ -110,7 +110,7 @@ show_stash () {w_commit=$(git rev-parse --verify "$s") && b_commit=$(git rev-parse --verify "$s^") && - git diff $flags $b_commit $w_commit + git diff-tree $flags $b_commit $w_commitHowever, this porcelain 'git diff' should actually remain because it's part of show_stash().
Heh. Damn. I was just starting to prepare my evening push and this patch is in maint, which I just merged to master, and I just rebased all of my pu topic branches over that. Junio's Meta toolkit doesn't have an "unrebase" so I can go back and amend that damn commit before pushing. I'm feeling lazy and don't want to create an unRB right now. I'll probably just throw another commit into maint to fix the above hunk. Thanks for catching it. -- Shawn.