В идеале, программное обеспечение, над которым вы работаете, уже должно иметь какой-либо общедоступный репозиторий, который вы можете использовать для git-svn
или какого-либо другого импортера.Предполагая, что по какой-то причине это невозможно, вот что я бы порекомендовал.
Создайте ветку под названием «vendor», но начиная с коммита, в который вы добавили версию 1.0 (похоже, это ваш корневой коммит).Всякий раз, когда появляется новая версия, проверьте эту ветку, удалите все и поместите дамп в выпуск (как вы говорите).Важная часть: никогда не включайте ваши изменения в эту ветку .Затем вы можете свободно слить его в свою основную ветку.С этим рабочим процессом вы можете столкнуться с конфликтами слияний чаще, поскольку в новый выпуск может быть внесено большое количество изменений.Опасность работы.
Ваша история в конечном итоге должна выглядеть следующим образом:
x [1.0] ------- x [1.1] ------------ x [1.2] (vendor)
\ \ \
o - o - o - o - o - o - o - o - o - o (master)
Кстати, жирный текст - это то, где вы ошиблись.Вы запустили ветку vendor из вашей основной ветки, поэтому, когда вы зафиксировали v1.1, ваша история выглядела так:
x [1.0] - o - o - o - o - o (master) - x [1.1] (vendor)
Так что, естественно, когда вы слили vendor в master, вы получили именно v1.1.