On Fri, Mar 11, 2011 at 09:49:13PM +0100, Piotr Krukowiecki wrote: > But "git stash apply" shows status from root of git repository. > This is misleading because you can't copy and paste the paths. Yeah, I am inclined to call it a bug. git-status will show the status of the whole tree from wherever you are, and people who want full paths will have status.relativePaths turned off, anyway. So I think your proposed semantics are more natural. > This patch tries to fix git-stash.sh to show status relative to > current directory. I can resend the patch with better commit message. Yes, please. There is lots of nice discussion in your email but none of it in the commit message. :) > diff --git a/git-stash.sh b/git-stash.sh > index 7561b37..586c12f 100755 > --- a/git-stash.sh > +++ b/git-stash.sh > @@ -12,6 +12,7 @@ USAGE="list [<options>] > > SUBDIRECTORY_OK=Yes > OPTIONS_SPEC= > +START_DIR=`pwd` > . git-sh-setup > require_work_tree > cd_to_toplevel > @@ -394,7 +395,7 @@ apply_stash () { > then > squelch='>/dev/null 2>&1' > fi > - eval "git status $squelch" || : > + (cd "$START_DIR" && eval "git status $squelch") || : > else > # Merge conflict; keep the exit status from merge-recursive > status=$? This fix looks reasonable to me. The other option would be to avoid cd_to_toplevel at the beginning (which I am not sure why we really need in the first place, but presumably some code paths rely on it), but it's probably not worth the risk of introducing new confusing bugs. -Peff -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html