我上有惱人的大牌特性分支工作,所以我最後往往grepping我當前分支的名字,當我需要從我的本地特性分支推到特性分支,像這樣:git中的管道別名?
git branch | grep '*' | sed 's/* //' | xargs git push origin
這工作正常。我想使這個別名,所以我在做這個〜/的.gitconfig:
[alias]
pushcur = branch | grep '*' | sed 's/* //' | xargs git push origin
現在,當我運行git pushcur
,我得到以下錯誤:
usage: git branch [options] [-r | -a] [--merged | --no-merged]
導致我相信,別名沒有正確解析管道。有什麼我應該做的,以實現所需的別名?
與解決一般問題無關,但在合理的最新版本的git中,您可以配置'push.default'(或'push.origin.default'以限制對'origin'的影響)到'current'(儘管「上游」有時可能更合適)。請參閱[git-config](https://www.kernel.org/pub/software/scm/git/docs/git-config.html)中的push.default部分。 – torek
也考慮使用bash自動完成來標籤分支名稱! zsh with oh-my-zsh默認爲它;) – caesarsol