2015-05-22 35 views
5

如果获取和检出远程分支的git在短短的一个命令

  • 我有本地回购已设置了
  • 远程$REMOTE和一个新的分支$BRANCH遥控器上的回购,我有不存在牵强,但

可我获取该分支检查出来到同名的跟踪当地的分支机构在一个命令

我可以在命令获得期望的结果要么

git fetch $REMOTE $BRANCH 
git checkout $BRANCH # or more explicitly git checkout -b $BRANCH $REMOTE/$BRANCH 

或(由this answer启发到问题How do I check out a remote Git branch?)与

git fetch $REMOTE $BRANCH:$BRANCH 
git branch --set-upstream-to=$BRANCH $BRANCH 
+2

不,但[你可以定义一个别名](https://git-scm.com/book/tr/v2/Git-Basics-Git-Aliases)。 – Phillip

+1

@Phillip如果,,没有“是答案,为什么不张贴它作为答案? – schmijos

+1

@JosuaSchmid因为我不考虑一个好的答案 – Phillip

回答

7

没有内置命令,但你可以定义您的别名~/.gitconfig

[alias] 
    fetch-checkout = !sh -c 'git fetch $1 $2 && git checkout $2' - 
+0

@ das-g:好的,你可以随时[ 'git checkout --track FETCH_HEAD'](https://git-scm.com/docs/git-checkout)或它的一些变体 – knittl

+0

@ das-g:我进一步探讨了这个话题,但我无法找到一种使用'FETCH_HEAD'创建跟踪分支的方法。看起来你必须使用别名 – knittl

+0

但它松动自动完成。我几乎总是使用它,因为我有易于记忆的分支前缀,但是我不能记住它的全名:( –