git - 两个分支命名相同?差异是一个小案例 - 一个混合案例?

时间:2013-04-01 05:32:58

标签: windows git git-branch

我已经习惯于在git中输入camelCase。那是 - 直到我意识到git区分大小写!包含文件名。

从历史 - 在这个生产分支的开头 - 它是ClientMgr。但就在一开始。

通过初始提交的所有工作 - 已经在分支 - clientmgr。

几个小时前 - 我意识到了这个问题。由于树是直的 - 而不是分支 - 我尝试删除ClientMgr。之后 - 在干净之前我有195个新文件。

不确定 - 我恢复了备份 - 但现在有两个分支 - 名称相同 - 不同的情况。

我会继续吗 - 只是忽略ClientMgr?还是有一种理智的方法来清理它?

我真的很想结束一个。我有一些想法 - 但是在拍摄它时已经厌倦了......

赞赏任何建议。

P.S。 - 猜这有助于解释为什么我几天前有一些丢失/丢失的变化。

我喜欢git - 希望过去或大部分时间都过去了 +++++++++++++++++++++++ 编辑:2013年4月1日

ClientMgr是原始分支 - 只有一次提交。我继续工作(认为我在ClientMgr分支上,而不是新的clientmgr分支。

我担心因为同名 - 不同的情况我认为是潜在的定时炸弹。这是我怀疑 - git主要将它们视为独立 - 但并非总是如此。例如 - 在ClientMgr上 - 并尝试检查clientmgr - 我收到一条错误消息,我已经在它上面。

看到这一点 - 可能还有其他问题迫在眉睫。

我认为我的第一步将是再次备份 - 然后尝试将ClientMgr重命名为没有相似性的地方 - 并测试并看看它是如何发生的。

这很顺利 - 至少我已经(或可能)照顾过

再次 - 我非常感谢大家的投入。

Jim H

+++++++++++++++++++++++++ 编辑2

不是预期的 - 但似乎没问题

我将ClientMgr重命名为oldclientmgr via git branch -m ClientMgr oldclientmgr

查看SourceTree中的树 - 它重命名为oldclientmgr 我检查了图表 - 我看起来就像我想成为的那样 我打开并查看了代码 - 它看起来正确到位

所以我认为 - git并不总是区分大小写 - 或者它不会重命名两个分支。

再一次 - 谢谢!

Jim H

2 个答案:

答案 0 :(得分:2)

如果您继续在两个单独的分支上工作(或者在一个分支上执行某些工作,那么在另一个分支上工作),则需要合并这些更改。这可以通过两种方式完成:

  1. 您可以使用git merge(在分支clientmgr时调用git merge ClientMgr
  2. 您可以使用git rebase
  3. 第二种解决方案有点困难,特别是当你不熟悉git时。两种解决方案都可能需要您解决冲突,因为两个分支中的更改可能不兼容。如果ClientMgr分支直接来自clientmgr,则您的合并应为fast-forward,这意味着不存在可能的冲突,因为分支ClientMgr中的所有更改都是在clientmgr之上进行的{1}}分支。

答案 1 :(得分:0)

请参阅原始问题的第一和第二编辑。

简而言之 - 我有两个同名的分支 - 唯一不同的是套管。

一个是ClientMgr - 第一个 - 只有一个提交。从那时起 - 我在clientmgr工作

我没有意识到我有两个 - 一直以来我都认为我正在做一个。

通过这里发生的事情 - git并不总是区分大小写 - 所以对我来说 - 课程始终坚持小写名称。

要重新解决问题 - 我尝试将ClientMgr重命名为oldclientmgr - 但发生的事情是 - 它重命名为oldclient manager。

幸运的是 - 它似乎没有丢失或以其他方式损坏。

随着双重名称问题的消失 - 我将oldclientmgr重命名为clientmgr

希望这有助于其他可能遇到此问题的人

JimH