我在GitLab上有i18n分支。我已经已经做了很少提交推送。 问题: 客户希望我向主分支发出合并请求,但仅限于某些特定文件(
选择尽可能小的更改
)。 这怎么可能 ? 正如我所看到的那样收集合并请求的所有提交......所以我该怎么办?我想创建第三个分支并在那里进行一小组修改......但这太荒谬了......
答案 0 :(得分:1)
您可以尝试应用类似于“How do you merge selective files with git-merge?”的解决方案:
git merge --no-ff --no-commit -s ours i18n
仅合并您需要的文件:
git checkout i18n -- file1 file2 file3...
答案 1 :(得分:0)
听起来你的客户只是希望你在创建合并请求之前压缩你的i18n分支上的提交。你可以在你的i18n分支上的git中使用交互式rebase来实现这一点。
git rebase -i HEAD~4
这将允许您与最近5次提交进行交互,更改数字以获得所需的提交。
在交互式rebase中,将您的更改的第一次提交保留为“选择”,并将其余部分更改为“壁球”
保存时,您将有机会更改压缩提交的提交消息。
有关详细信息,请参阅:http://robots.thoughtbot.com/git-interactive-rebase-squash-amend-rewriting-history