Я думаю о преобразовании моего слияния только рабочий процесс, чтобы использовать rebase чаще. В этом конкретном случае я единственный разработчик, но я работаю на нескольких платформах, часто редактируя одни и те же файлы для частей, специфичных для платформы, как правило, с неконфликтными изменениями. Но я немного не уверен в этом, из-за споров о git merge vs git rebase и их безопасности (например, см. this против this, два верхних ответа от a question).git safe rebase или «попробуйте rebase, fallback to merge»
Вопрос: как сделать что-то вроде следующего, с целью «безопасный», но все-таки как можно более чистой тянуть/перебазирование/слияний:
- Если есть не-толкнул фиксаций, затем
git pull --rebase
до первая операция слияния, которая конфликтует с местной историей. - Затем
git pull --no-rebase
, чтобы объединить остальные и разрешить конфликт. - Возможно, вы вернетесь к восстановлению для последних нескончаемых изменений, чтобы сохранить параллельную часть истории как можно короче.
Так что, если нет конфликтов, конечный результат будет тянуть с перестановкой и хорошей линейной историей. Если есть конфликты, тогда слияния будут видны, но параллельная история будет как можно короче.
Возможно ли это с помощью простой простой команды git или двух, с правильными переключателями (которые я мог бы написать в сценарий pull или псевдонима)? Если нет, возможно ли это с помощью какого-либо существующего инструмента?
Другой способ посмотреть на этот вопрос: Я хочу, чтобы автоматизировать решение о выборе перебазироваться или сливаются, поэтому мне не нужно думать о том, что детали, делая тянуть.
Кроме того, это даже имеет смысл? :)