如何在没有某些文件的情况下将一个分支合并到另一个分支?

时间:2019-08-01 19:37:45

标签: git git-merge

我有两个分支-开发和管理员。我还将Catch2框架用于单元测试。 Catch2在开发分支上,但是在发布要掌握的版本时,我不希望这些文件放在那里。

是否有一个命令可以让我“锁定”一个分支上的某些文件? 假设它看起来像这样: 发展 - 源代码 -单元测试代码

合并

大师 -源代码

2 个答案:

答案 0 :(得分:1)

使用git checkout --patch <branch> <file> 确保您在master分支上。

答案 1 :(得分:0)

您使用cherry-pick命令从一个分支获取单个提交。

如果所需的更改不在单独的提交中,请对split the commit into individual commits使用此处显示的方法。粗略地说,您使用git rebase -i来进行原始提交的编辑,然后使用git reset HEAD^来有选择地还原更改,然后使用git commit将该位作为历史记录中的新提交来提交。

There is another nice method here在《红帽杂志》中,他们使用git add --patch或可能使用的git add --interactive,如果您想将不同的更改拆分到单个文件中,则可以只添加部分块(在该页面中搜索“拆分”)。

对更改进行拆分后,您现在就可以选择所需的内容了。