Eclipse Git:自动同步2个分支

时间:2016-04-25 11:02:30

标签: eclipse git branch

我正在和一些伙伴一起开展一个项目。

昨天我克隆了该项目,目的是增加一项功能 我有2个本地分支正在开发(主分支)和pageContent(我的功能分支)。

我目前遇到的问题是当我在我的功能分支上编辑某些内容时,它会自动在我的developp分支上编辑它(我没有提交任何内容)。

我检查了我的developp分支以删除该版本,当我在我的功能分支上签出时,该版本也被删除了......

分支似乎是自动同步的。

1 个答案:

答案 0 :(得分:1)

  

我查看了我的开发分支以删除该版本,当我在我的功能分支上签出时,该版本也被删除了......

这就是git的工作原理

在下图中,您可以看到 3 states
Git有三个主要状态,您的文件可以驻留在其中。

enter image description here

它们都在您的分支机构之间共享。但是当您结帐分支时,您更改了HEAD,这样即使您结帐分支机构,也会在您的存储库之间共享staging area && working directory

由于您在切换分支时没有提交(我假设发生了什么),您会看到跟随更改您的新分支。

如果您不希望更改为关注,则需要在切换到分支之前提交(或隐藏)您的工作。

How to checkout different branch with clean working directory and stage area?

如果您希望在工作目录中没有任何“剩余”的情况下签出干净的分支,并且您可以创建一个新的worktree,这将导致您的存储库的共享视图(所有内容是共享的)但是有一个不同的工作目录和暂存区。

来自git v2.5

git worktree add <new_path>

现在在你的任何分支中做任何你想做的事。它将创建2个独立的工作文件夹,彼此分开,同时指向同一个存储库。

使用wortree,您无需执行任何clearreset即可删除所有已暂存且未跟踪的内容。

以下是如何操作的演示:

enter image description here