• J
    checkout: sometimes work from a subdirectory. · 104f3e03
    Junio C Hamano 提交于
    git-checkout does two very different things, and what they
    should do when run from subdirectory are quite different.
    
    It does not make any sense to run the one that switches the
    current head from anywhere other than the toplevel:
    
    	git-checkout [-f] <branch>
            git-checkout [-b <branch>] <committish>
    
    We could of course chdir to top and do the whole-tree checkout
    in git-checkout, but the point is the operation does not make
    sense on a partial tree.  The whole tree is checked out.
    
    The other form is to update the index file and working tree file
    selectively:
    
    	git-checkout <treeish> <file>... ;# out of tree to index and file
            git-checkout -- <file>...	 ;# out of index to file
    
    This form _does_ make sense to run from subdirectory; and I
    myself often wish we supported this.
    
    So here is a patch to do both.
    Signed-off-by: NJunio C Hamano <junkio@cox.net>
    104f3e03
git-checkout.sh 3.3 KB