Re: git-grep to operate across who repository and not just CWD?
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Feb 28, 2011, 18:38 UTC
- Message-ID
- <7vd3mchumz.fsf@alter.siamese.dyndns.org>
- In-Reply-To
- <7vk4gkhuw4.fsf@alter.siamese.dyndns.org>
Junio C Hamano <gitster@pobox.com> writes:
Show 13 quoted lines
> Jay Soffian <jaysoffian@gmail.com> writes: > >> I had the crazy thought that if git had a --cdup option, then this >> would work with any command you wanted to run from the top: >> >> git --cdup grep ... >> >> Maybe that's the best way to expose "from the top please" generically? > > We tend to give --full-tree option to individual subcommands where it > makes sense to get the same effect. > > One problem with a global "git --cdup" is ...
Having said all that, here is a tip of the day. I have this in my .bashrc for interactive shells.
cdup () {
local eh
eh=$(git rev-parse --is-inside-work-tree) || return
case "$eh" in
true)
eh=$(git rev-parse --show-toplevel)
test -z "$eh" || cd "$eh"
;;
false)
eh=$(git rev-parse --git-dir) || return
cd "$eh" || return
eh=$(git rev-parse --is-bare-repository) || return
test "z$eh" = ztrue || cd ..
;;
esac
}and I can say
$ cd Documentation/howto
$ editor *.txt
$ cdupto come back to the toplevel after having worked somewhere deep in the mine.