Will&#39; git push origin <branch>&#39;在本地删除后远程删除<branch>?

时间:2016-09-15 20:29:09

标签: git git-flow

我遵循git-flow模式,我有疑问。

首先,我从&#39; develop&#39;

添加一个新的功能分支
# Checkout from develop branch
$ git checkout -b <branch>
# Push and track <branch>
$ git push --set-upstream origin <branch>

功能完成后,我按照将完成的功能纳入开发

# Switch to 'develop'
$ git checkout develop
# Merge <branch> into 'develop'
$ git merge --no-ff <branch>
# Remove <branch> locally
$ git branch -d <branch>
# Remove <branch> remotely <-- ???
$ git push origin develop

最后一个命令是我不确定的命令。它会远程删除我刚刚在本地删除的<branch>吗?

2 个答案:

答案 0 :(得分:2)

没有; <branch>只能通过git branch -d <branch>在本地删除,但它的副本存在于远程(如果之前被推送)。这可以通过运行git branch -vvvv来验证,这将显示没有关联的本地跟踪分支的远程分支。

git push origin develop只会 develop推送到您的远程存储库(origin),而不会触及任何其他内容(禁止任何提交挂钩)。如果<branch>确实远程存在并且您想要将其删除,则必须将删除操作添加为单独的步骤(git push origin :<branch>)。

答案 1 :(得分:1)

感谢您的评论。现在,我理解你所问的答案是否定的。在git-flow模型中,功能分支不会被推送到远程,因此所有操作都会影响您的本地git存储库。

如果您已将功能分支推送到远程仓库,则需要手动将其删除。