Если у меня есть ветка с несколькими коммитами, отправьте ее на сервер и создайте для нее PR в Bitbucket, скорее всего, эти коммиты будут изменены удаленно. Например, кто-то может нажать кнопку «Rebase» в PR.
Когда я снова работаю над этой веткой, я хочу включить все удаленные изменения в мою локальную ветку (которая также может опережать удаленную версию некоторыми новыми коммитами). Поэтому я тяну, создавая коммит слияния.
Если я снова нажму свою ветку, все мои коммиты появятся дважды. Я совершенно не хочу этого. Но я не знаю, как этого избежать.
Есть ли рабочий процесс, который так же прост, как слияние (т.е. мне не нужно исправлять одни и те же конфликты для каждой фиксации, как это иногда происходит во время перебазирования), но все же создает историю без повторяющихся коммитов?
Вместо этого попробуйте перебазировать в вашем местном отделении по связям с общественностью поверх обновленного отдела по связям с общественностью.
git checkout PR-branch
git fetch
git rebase origin/PR-branch
Любая общая фиксация вашей ветки не должна повторяться (воспроизводиться) поверх исходной / PR-ветки удаленного отслеживания, если они идентичны.
Тогда можно git push --force
обновить PR