git合并混乱

时间:2012-03-04 04:44:19

标签: git git-merge

我昨天刚开始使用GIT而且我正在尝试做一些事情,但我认为某些地方出了问题。让我解释一下我的情况:

我从我的工作目录(主分支)开始看起来像这样

folder1
file1
file2
file3

我使用$ git checkout -b X命令

创建了另一个分支

在此之后,我继续删除文件夹rm -r *中的所有文件,然后添加了几个文件,因此工作目录变得如此(我想我不应该这样做)

xFile1
xFile2

然后经过一些测试后,我到达了分支稳定的事实..我想进行合并,所以我做了

$ git checkout -b master
$ git merge X

现在,合并后,我的目录(folder1)被删除了。我真正想要的是将xFile1和xFile2带入主分支。

我对此很困惑,请帮助!

3 个答案:

答案 0 :(得分:1)

您可能应该rebased而不是合并。 rebase更多的是你要表达的内容 - 你在X中有一个很好的代码 base ,并且你希望在master之上添加你的内容放入X

如果您使用git rebase X分支机构中的master,则会在<{strong> master

之上的X 中播放所有提交内容

答案 1 :(得分:1)

您的混淆部分看起来像是假设合并忽略了您的删除操作。实际上,当您删除文件并提交更改时,它会记住这一点。合并到主人然后重播删除。

答案 2 :(得分:0)

在回到master之前,你是否在分支X上创建了一个提交? 如果没有,那么它总是会在git中造成意外。