-1
比方说,我有一个主要分支库master
和3个文件:如何在不删除本地文件的情况下合并分支?
fileA
[追踪]fileB
[追踪]fileC
[追踪]
我创建了一个新分支test
和我删除fileB
现在我想回去master
和合并test
进去,但我不想fileB
被删除,只是“未跟踪”从混帐:
fileA
[追踪]fileB
[未追踪]fileC
[追踪]
有没有办法做到这一点?
比方说,我有一个主要分支库master
和3个文件:如何在不删除本地文件的情况下合并分支?
fileA
[追踪]fileB
[追踪]fileC
[追踪]我创建了一个新分支test
和我删除fileB
现在我想回去master
和合并test
进去,但我不想fileB
被删除,只是“未跟踪”从混帐:
fileA
[追踪]fileB
[未追踪]fileC
[追踪]有没有办法做到这一点?
“天真”的做法按我的预期工作。
首先我将文件夹的内容复制到临时位置。然后我做合并。然后我将旧内容复制到合并的内容上,最后放弃更改。
运行的句子(正对库的根,在树枝上master
):
git archive -o /tmp/temporary_repo_archive.zip HEAD
git merge test
unzip /tmp/temporary_repo_archive.zip
git reset --hard
rm /tmp/temporary_repo_archive.zip
一种方法是:'git的樱桃挑选-n'的'HEAD'提交test'的'到'master'中,解决任何合并冲突,然后使用'git reset fileB'取消'fileB'的删除。 – miqid
我从来没有用过[git-cherry-pick](https://git-scm.com/docs/git-cherry-pick)。我尝试过,但无法启动。我现在几次发生这种情况,我一直在“手动”处理它。最后,我使用了天真的方法,这似乎奏效,我将在未来的自我参考答案中解释。 – xabitrigo