Git Branch Bash Variable Shortcut -


i trying create bash variable can use refer current branch in git: $branch.

when adding: branch=$(git symbolic-ref --short -q head) bash_profile, keep getting: fatal: not git repository (or of parent directories): .git when start new terminal.

furthermore, echo $branch not print out branch name, git symbolic-ref --short -q head would.

i'd able use not print out branch name (i have in prompt) things like:

git push origin $branch

which branch on depends on directory in. if have 2 git work trees, ~/a , ~/b, typing cd ~/a can put on 1 branch , typing cd ~/b can put on branch.

so trying set $branch in .bash_profile isn't going work. need update $branch every time change work trees, , after command can change branch of current work tree.

the simplest thing not set variable. instead, make alias:

alias branch='git symbolic-ref --short -q head 2>/dev/null' 

and use this:

git push origin $(branch) 

or if you're old-school:

git push origin `branch` 

if want set environment variable, simplest solution set every time print prompt:

_prompt_command () {     export branch=$(git symbolic-ref --short -q head 2>/dev/null) } export prompt_command=_prompt_command 

note: should check .bash_profile , .bashrc see if you're setting prompt_command. if so, set branch in whatever function you're running prompt command.


Comments

Popular posts from this blog

ios - UICollectionView Self Sizing Cells with Auto Layout -

node.js - ldapjs - write after end error -

DOM Manipulation in Wordpress (and elsewhere) using php -