origin/joetest
origin/JoeTest
我有一个问题,我在git中有两个名称相同但大小写不同的远程分支。
我无法在Visual Studio Online中解决如何处理它们,因为存在冲突,尽管我可以看到它们之间的差异。
Visual Studio中的git工具和git bash无法区分这两种情况,导致正在使用它们的人之间的同步出现了问题,其中一些提交在一个上,另一些提交在另一个上。
您对我们能做什么有什么想法吗?
谢谢。
在一个区分大小写的文件系统上(例如Linux),克隆存储库,然后重命名其中一个分支,将其推送并删除旧分支:
git clone <url> repo
cd repo
git checkout -b joetest2 origin/JoeTest
git push origin joetest2:joetest2
git push origin :JoeTest
关于为什么 Git 在使用大小写不同的分支名称时出现问题,请查看此相关问题。
如果涉及到GitLab,只是描述一种做这件事的方法。
我们有两个名称类似的分支: (1) develop - 官方分支 (2) Develop - 坏分支 只有大小写不同。
由于两个分支的名称类似,无法将坏的“Develop”分支拉入SourceTree。
解决方法如下:
我们需要将不好的分支“Develop”重命名,但GitLab没有提供相应的机制。因此,在GitLab门户网站上,我们从旧分支创建了新分支(称之为Develop_Bad)。 (a) 转到GitLab门户网站,依次选择Gitlab//Repository/Files。选择不良分支Develop,例如:https://gitlab.com/mobilityone/GEMS/-/tree/Develop (b) 在[Develop] GEMS/[+]下拉列表中,选择New Branch (c) 命名新分支Develop_Bad 将Develop_Bad拉入本地机器上的SourceTree。我刚刚发现了一些神奇的东西,它可以在Windows下运行。我有两个目录:
XUnitRemote 和 XunitRemote
我做了以下操作:
git mv XunitRemote XUnitRemote.todo
git mv XUnitRemote.todo XUnitRemote
而且它只是工作了
git mv
适用于文件/目录。这个问题是关于分支的。 - poke
.git\refs\remotes\origin
目录并临时更改文件夹名称以匹配您要删除的joetest
或JoeTest
变体。 - veertien