Skip to content
  • Nazri Ramliy's avatar
    git: run in a directory given with -C option · 44e1e4d6
    Nazri Ramliy authored and Junio C Hamano's avatar Junio C Hamano committed
    
    
    This is similar in spirit to "make -C dir ..." and "tar -C dir ...".
    
    It takes more keypresses to invoke git command in a different
    directory without leaving the current directory:
    
        1. (cd ~/foo && git status)
           git --git-dir=~/foo/.git --work-dir=~/foo status
           GIT_DIR=~/foo/.git GIT_WORK_TREE=~/foo git status
        2. (cd ../..; git grep foo)
        3. for d in d1 d2 d3; do (cd $d && git svn rebase); done
    
    The methods shown above are acceptable for scripting but are too
    cumbersome for quick command line invocations.
    
    With this new option, the above can be done with fewer keystrokes:
    
        1. git -C ~/foo status
        2. git -C ../.. grep foo
        3. for d in d1 d2 d3; do git -C $d svn rebase; done
    
    A new test script is added to verify the behavior of this option with
    other path-related options like --git-dir and --work-tree.
    
    Signed-off-by: default avatarNazri Ramliy <ayiehere@gmail.com>
    Signed-off-by: default avatarJunio C Hamano <gitster@pobox.com>
    44e1e4d6