删除远程分支的尝试失败 :
$ git branch -d remotes/origin/bugfix
error: branch 'remotes/origin/bugfix' not found.
$ git branch -d origin/bugfix
error: branch 'origin/bugfix' not found.
$ git branch -rd origin/bugfix
Deleted remote branch origin/bugfix (was 2a14ef7).
$ git push
Everything up-to-date
$ git pull
From github.com:gituser/gitproject
* [new branch] bugfix -> origin/bugfix
Already up-to-date.
我如何正确删除本地和远程的远程/原产/bugfix分支?
答案是好的, 但是, 如果您有一大堆分支, 逐个删除本地和远程的分支, 将会是一个无聊的任务 。 您可以使用此脚本将这些任务自动化 。
branch_not_delete=( "master" "develop" "our-branch-1" "our-branch-2")
for branch in `git branch -a | grep remotes | grep -v HEAD | grep -v master`; do
# Delete prefix remotes/origin/ from branch name
branch_name="$(awk '{gsub("remotes/origin/", "");print}' <<< $branch)"
if ! [[ " ${branch_not_delete[*]} " == *" $branch_name "* ]]; then
# Delete branch remotly and locally
git push origin :$branch_name
fi
done
列出您不想删除的在遥控器分支上的循环的分支, 如果它们不在我们的“ 保存列表” 中, 则将其删除 。
来源: 立即删除 Git 分支
删除本地端 - (正常)
git branch -d my_branch
如果分行处于调整/合并的进度中,且未正确完成,这意味着您将会出错, 重设/ 计量在进行中, 因此在这种情况下, 您将无法删除分行 。
所以要么你需要解决重置/合并问题。 否则,你可以通过使用, 强制删除,
git branch -D my_branch
要删除远程 :
git push --delete origin my_branch
您可以使用 :
git push origin :my_branch # Easy to remember both will do the same.
图形代表:
调
很简单:
删除远程分支
git push -d origin <branch-name>
或
git push origin :<branch-name>
- 也可以用此语法删除标记
强制删除本地分支
git branch -D <branch-name>
注意: 在删除远程分支后, 在其它机器上进行 Git 抓取 -- all -- prune, 以删除过时的跟踪分支 。
示例示例示例示例
要删除本地分支
git branch -D my-local-branch
要删除远程分支
git push origin :my-remote-branch
随着新版本的Git, 也有可能删除分支
git push origin --delete <branch_name>
TIP: 如果您想要查看所有可用的分支, 您可以使用 git 分支 - a,
您可以使用 Git 分支 - r 查看远程分支