我刚开始从事一个使用 git 作为存储库的项目。实际上,我以前从未使用过版本控制系统,因为我是一个开发者团队。据我了解,如果您创建本地存储库的分支,请在 elcipse 中选择该分支,然后更改代码。然后,您应该能够选择原始主分支,并且如果您没有合并,您将看不到这些更改。
让我感到困惑的是,当我切换回 master 时,我在新分支中所做的更改就在那里......即使我还没有合并。
我显然误解了整个事情......任何想法谢谢。
据我了解,如果您创建本地存储库的分支,请在 elcipse 中选择该分支,然后更改代码。然后,您应该能够选择原始主分支,并且如果您没有合并,您将看不到这些更改。
让我感到困惑的是,当我切换回 master 时,我在新分支中所做的更改就在那里......即使我还没有合并。
您没有明确表示这一点,但我的猜测是您没有提交这些更改。Git 很乐意让您在具有未提交更改的分支之间切换 - 只要这些更改不在两个分支之间不同的任何文件中。这有帮助的最重要的事情是,当您即将提交并发现您签出了错误的分支时。
如果您提交了更改,然后切换了分支,您会看到它们完全按照您的预期消失。
(顺便说一下,合并是基于提交的操作 - 您合并两个(通常)提交并创建一个新的提交,其中两个原始提交都是父级。考虑与未提交的更改合并是没有意义的。)
关于学习使用,更重要的是理解Git,有很多很好的参考资料——例如Git Parable(对核心思想的轻松介绍)、ProGit和Git Community Book。EGit 原则上是一件很棒的事情,它可以通过 IDE 访问 - 但我提醒您不要跳过对事情在幕后如何真正工作的良好理解。有朝一日,它可能会让你免于点击按钮然后说“哦,不,我做了什么!”
关于Egit,我会推荐ekke的角文章: