1

我通常像这样更新我的本地分支:

$ git fetch

$ git status
# On branch develop
# Your branch is behind 'origin/develop' by 1 commit, and can be fast-forwarded.
#
nothing to commit (working directory clean)

$ git merge --ff-only origin/develop

有没有在不命名远程分支的情况下编写最后一个命令?从 git status 可以看出,git 知道当前分支正在跟踪 origin/develop。所以我正在寻找类似的东西:

$ git merge tracking

这样做的原因是在来回切换时很容易输入错误的分支(你可以看到我--ff-only在这里用作安全防护)。

4

2 回答 2

3

将选项设置merge.defaultToUpstream为 true:

git config merge.defaultToUpstream true

并且您可以省略要合并的提交:

git merge --ff-only
于 2012-12-12T09:39:17.900 回答
2

您可以使用develop@{upstream}或简称develop@{u}来指代设置为您的分支上游的develop分支。如果在它之前没有提供分支名称@,它将默认使用当前分支,所以当你在那个分支上时,你可以只使用@{u}.

这些类型的引用将适用于其他命令以及合并,例如,您可以获得将通过命令合并应用的提交列表:

git log ..@{u}

这记录在git rev-parse的手册页中,在关于指定修订的部分中。

于 2012-12-12T15:09:05.737 回答