我正在使用一个本地存储库(根本不能像本地存储库一样工作在我在Lynda.com上观看的Xcode演示中)。我可以让它工作的唯一方法是创建我的项目目录的另一个副本,然后指向它作为管理器中的工作目录。好的......没关系,虽然根据我一步一步的演示,它不应该像那样工作。
现在我的问题是,当我想在我的生产分支上检查某些东西而我正在处理另一个有一些未提交更改的东西时,我切换了分支并且合并了所有文件!!! 说真的...... wtf。所以现在我的生产项目完全搞砸了,在我修复合并冲突之前,它不会让我切换回另一个分支。
所以我的问题是:这是常规的git行为,还是我的存储库系统搞砸了?如果它确实是常规行为,那么您认为至少会有一个警告对话框,告诉您有未提交的更改,并且它将合并您的分支。
答案 0 :(得分:1)
我不太了解Git。我主要使用Mercurial。所以我不能给你一个比这更好的答案:
您可能需要查看Pro Git本书。另外,在通过Xcode开始使用Git之前,请先熟悉命令行中的Git。对实际Git工具的深入了解将帮助您了解IDE接口的工作方式。
答案 1 :(得分:1)
Git通常不允许您使用未经修改的更改来切换分支。您必须提交它们或在移动分支之前存储它们。
查看git-stash以了解其工作原理。
我从来没有通过Xcode使用git,所以我感觉它在幕后做了一些奇怪的事情,因为这种情况发生是不正常的。它会抱怨一个脏工作树并告诉你在切换分支之前存储。