Я нашел некоторые другие вопросы, которые говорят об обратном слиянии в Git, но эти вопросы задают вопрос, как отменить слияние ВСЕМ коммитом. Я хочу отменить слияние одного каталога в моем дереве. Возможно ли это в Git?
В Subversion вы можете сделать это:
$ cd /workingcopy/some/subtree
$ svn merge -r802:801 .
И это вычисляет обратную разницу между ревизиями 801 и 802 и применяется только к текущему каталогу.
Лучшее, что я могу придумать, это
$ cd /gitrepo/some/subtree
$ git diff <commit-sha1> <commit-sha1>^ . > patchfile
$ patch -p1 < patchfile
Хотя на самом деле я еще не проверял это. Может ли Git сделать что-то лучше?