2012-06-05 2 views
1

У меня есть ветвь dev, над которой я работаю и хочу ее совершить. Однако через неудачную серию событий, в которые я не попаду, мой git svn думает, что он уже обновлен, и нечего совершать.Как я могу выполнить фиксацию силы с помощью git-svn?

По существу прямо сейчас я хочу скрыть удаленное содержимое моей ветки локальной версией моей ветви. Аналогично git push --force, за исключением git svn. Что-то вроде git svn dcommit --force.

Я понимаю, что существуют другие способы, такие как проверка другой копии и копирование/вставка содержимого репо. Но я надеюсь на простое «форсирующее» решение, подобное тому, которое существует с чистым git.

ответ

0

«git-svn dcommit» не имеет опции -force или любого аналога. Вы можете попробовать SmartGit клиента:

  1. Откройте репозиторий Git-SVN с SmartGit
  2. Выберите Remote-> Нажмите продвинутым. Установите флажок «Сила», нажмите Push.

SmartGit может спросить, нужно ли отталкивать ветку как новую ветку или входить в существующую ветку. Если вы выберете New, SmartGit выберет имя филиала SVN из вашего имени ветки Git (например, для refs/heads/XXX он выберет ветки/XXX). Если вы выберете «Существующие», SmartGit просмотрит вашу текущую историю филиалов до тех пор, пока не будет выполнена фиксация «git-svn-id:» и будет перенаправлять вашу ветку на указанный там URL. Я думаю, что второй вариант лучше для вашего дела.

+1

что такое умный git делать под капотом там, чтобы заставить? – Zugwalt

+0

Он заменяет ветвь SVN веткой. Таким образом, вы увидите «R» в «svn log -v». –

+0

похоже не работает – aelam

Смежные вопросы