У меня есть несколько веток, каждая из которых имеет свои особенности. Обычно у меня будет дополнительная ветка "not_master", которая содержит master + функцию A, например:
(not_master) a--b--c--d--e---M--x--y--z
(feature A) --h--i--j-/
Иногда я хочу отключить функцию A, но сохраняю коммиты x,y,z
в "not_master".
Другими словами, мне бы хотелось:
(not_master) a--b--c--d--e--x--y--z
Я вижу, что могу сделать git revert -m 1 M
, который добавит коммит до конца, который отменит мои изменения, но я не очень хочу этого делать, так как эти коммиты еще не были опубликованы, поэтому добавление большего количества коммитов делает историю еще труднее читать.
Другие предлагают просто сделать git reset --hard M
, но это сбросит изменения x,y,z
. Я просто думаю об этом совершенно неправильно? Должен ли я просто git reset --hard M
и вишня выбрать x, y, z?