我已经习惯于在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
答案 0 :(得分:2)
如果您继续在两个单独的分支上工作(或者在一个分支上执行某些工作,那么在另一个分支上工作),则需要合并这些更改。这可以通过两种方式完成:
git merge
(在分支clientmgr
时调用git merge ClientMgr
)git rebase
第二种解决方案有点困难,特别是当你不熟悉git时。两种解决方案都可能需要您解决冲突,因为两个分支中的更改可能不兼容。如果ClientMgr
分支直接来自clientmgr
,则您的合并应为fast-forward
,这意味着不存在可能的冲突,因为分支ClientMgr
中的所有更改都是在clientmgr
之上进行的{1}}分支。
答案 1 :(得分:0)
请参阅原始问题的第一和第二编辑。
简而言之 - 我有两个同名的分支 - 唯一不同的是套管。
一个是ClientMgr - 第一个 - 只有一个提交。从那时起 - 我在clientmgr工作
我没有意识到我有两个 - 一直以来我都认为我正在做一个。
通过这里发生的事情 - git并不总是区分大小写 - 所以对我来说 - 课程始终坚持小写名称。
要重新解决问题 - 我尝试将ClientMgr重命名为oldclientmgr - 但发生的事情是 - 它重命名为oldclient manager。
幸运的是 - 它似乎没有丢失或以其他方式损坏。随着双重名称问题的消失 - 我将oldclientmgr重命名为clientmgr
希望这有助于其他可能遇到此问题的人
JimH