From: Shawn O. Pearce Date: Fri, 06 Mar 2009 15:58:14 GMT Subject: Re: [PATCH 1/3] bash completion: fix completion issues with fetch, pull, and push Message-ID: <20090306155814.GG16213@spearce.org> In-Reply-To: <07bd381f7984117681504ce57c1f6c40aecafed3.1236314073.git.jaysoffian@gmail.com> Jay Soffian wrote: > Sverre Rabbelier noticed a completion issue with push: > > $ git push ori > git push origin > > $ git push -f ori > git push -f origin/ > > Markus Heidelberg pointed out that the issue extends to fetch and pull. > > The reason is that the current code naively assumes that if > COMP_CWORD=2, it should complete a remote name, otherwise it should > complete a refspec. This assumption fails if there are any --options. > > This patch fixes that issue by instead scanning COMP_CWORDS to see if > the remote has been completed yet (we now assume the first non-dashed > argument is the remote). The new logic is factored into a function, > shared by fetch, pull, and push. > > The new function also properly handles '.' as the remote. > > Signed-off-by: Jay Soffian Acked-by: Shawn O. Pearce > --- > contrib/completion/git-completion.bash | 109 +++++++++++++++++-------------- > 1 files changed, 60 insertions(+), 49 deletions(-) -- Shawn.