删除具有资本化差异的远程分支



最近,有一个分支名为"回归";我不小心做出了";回归";相反

因为变化相对较小,我决定只写下它们是什么,并完全重置我的本地州,该州现在既没有分支。

我想删除远程分支";回归";而删除";回归";在这个过程中。

我很担心,如果我只是做";git-push-d原点回归";我会不小心删除";回归";还有,因为我的本地Git似乎对哪个是哪个非常困惑。

我如何确保不会发生这种情况,并且只删除正确的一个?

我看到了这篇文章,但它实际上跳过了不正确分支的删除步骤,所以我不确定这一部分。

我有这两个分支的散列,但如果可能的话,我无法找到如何在此基础上删除一个分支。

分支映射到磁盘上存储在.git目录下的文件。如果您有一个不区分大小写的文件系统(Windows、MacOS(,则不能有两个名称仅大小写不同的分支。

然而,在Linux下,文件系统是区分大小写的,这意味着两个文件可以存在于同一位置,并且它们的名称只能根据大小写而不同。这意味着,例如,托管在Linux上的Github,拥有名为xyzXYZ的分支没有问题,并且您可以安全地引用名为XYZ的分支,并确保不会无意中影响远程分支xyz

如果您正在使用区分大小写的文件系统推送某个位置,则可以安全地运行git push origin :Regression,并确保不会影响regression分支。

由于您知道最终分支要指向的提交哈希,一种方法是简单地删除两个分支:

  1. 在相关提交处创建一个新分支,例如git branch regression-backup abc123def,其中abc123def是提交哈希
  2. 使用git push -d origin Regression删除
  3. 如果这删除了两个分支,只需使用git branch regression regression-backup重新创建正确的分支,并将其推送到远程

最新更新