如何处理名称中存在冲突的远程分支?

时间:2016-01-14 20:26:13

标签: git

我运行git branch -r并列出以下内容:

remotes/origin/release/b1
remotes/origin/release/b1 - Conflict On 2015_09_01 12_58_39

在Stash中,分支与"冲突"在名称中不存在。

这是什么"冲突"分支意味着,删除是否安全,如果是,如何删除?

1 个答案:

答案 0 :(得分:2)

这个答案分为两个部分,一个通常是真的,一个特定于这个分支名称。

(第1部分)

远程分支名称通常在远程管理。也就是说,你可以这样做:

git branch -r -d "b1 - Conflict On 2015_09_01 12_58_39"

在本地删除它,但它仍然存在于遥控器上,您将在下一个git fetch重新获取它。

如果您拥有正确的权限,则可以执行删除操作:

git push origin :"Conflict On 2015_09_01 12_58_39"

或:

git push --delete "Conflict On 2015_09_01 12_58_39"

一旦遥控器上不再存在,git fetch --prune应删除本地副本。

(第2部分)

分支名称通常不允许使用空格。据推测,这个分支名称是由一个表现不好的程序创建的。可能需要通过直接登录到远程来解决此问题;我不确定正常的推送删除机制是否适用于这些(我必须作弊并创建一个错误的分支名称来测试它)。