Есть ли плагин для Eclipse для git -svn? Я ищу способ обработать репо SVN с помощью Git (для быстрого переключения ветвей и т.д.)
Git -svn и Eclipse?
Ответ 1
Не похоже, что есть плагин Git для Eclipse, который еще поддерживает git -svn.
EGit, по-видимому, является самым активным и популярным плагином Git для Eclipse на данный момент и не поддерживает git -svn, но нет ничего, что помешает вам использовать EGit с Eclipse и взаимодействовать с git -svn через командную строку (или через tortoise git например).
Ошибка Eclipse 315264 является ошибкой EGit для поддержки git -svn, и это похоже на то, что поддерживают разработчики EGit, но у них есть другие приоритеты. Поэтому убедитесь, что вы голосуете за эту ошибку, если хотите эту функцию.
Ответ 2
EGit является единственным плагином Git для Eclipse на данный момент. Он не поддерживает git -svn. Но есть способ заставить EGit работать с вашим репозиторием Subversion, и этот подход хорошо работает с любым другим клиентом Git.
SubGit - это серверное решение, которое позволяет Git обращаться к вашим репозиториям Subversion, а также к доступу Subversion к Git хранилища. Вы можете обратиться к Subgit documenation для более подробной информации, но в целом они довольно просты:
$ subgit configure --layout auto $SVN_URL $GIT_REPO
# Adjust $GIT_REPO/subgit/config
# to specify your branches, tags and other settings
# Adjust $GIT_REPO/subgit/authors.txt
# to introduce svn author names to their git counterparts
# Adjust $GIT_REPO/subgit/passwd
# in case you have no SVN credentials cached on your machine
$ subgit install $GIT_REPO
$ ... translating ... a little git is gonna born right here ...
$ TRANSLATION SUCCESSFUL
После этого:
-
У вас есть репозиторий Git в $GIT_REPO, синхронизированном с хранилищем SVN в $SVN_URL; эта синхронизация надежно двунаправлена, то есть как SVN, так и репозитории Git остаются доступными для записи, а SubGit заботится об изменениях с обеих сторон.
-
SubGit установил крючки в каталог $GIT_REPO/hooks, которые запускаются на каждом
git push
в этот репозиторий. -
SubGit публикует репозиторий SVN для получения новых версий.
Обратите внимание, что ваши товарищи по команде могут использовать одно и то же зеркало для отправки своих изменений в репозиторий Subversion. В этом случае вам нужно настроить сервер Git, к счастью, SubGit поддерживает практически каждый сервер Git, доступный на данный момент:
- HTTP-сервер Apache с git-http-backend, GitLab, Gitosis, Gitolite: поддерживается из коробки;
- Atlassian Bitbucket Server: в этом случае вы можете использовать надстройка SVN Mirror, которая построена на движке SubGit;
- Gerrit: вам нужно установить плагин SubGit для Gerrit в этом случае;
Отказ от ответственности: я разработчик SubGit; SubGit - это коммерческое программное обеспечение со свободными вариантами для небольших команд, Open Source и Academic.
Ответ 3
Несмотря на то, что этот вопрос составляет 4 года, я думал, что поделился своим недавно найденным обходным решением:
- Откройте "Конфигурации внешних инструментов" (рядом с "Запуск Конфигурации ") и создать новую конфигурацию" Программа ".
- Для рабочего каталога выберите проект из рабочей области.
- Введите
svn dcommit
в текстовое поле arguments. - Дублируйте конфигурацию и замените
svn dcommit
наsvn rebase
.
Теперь вы можете запускать git svn dcommit
и git svn rebase
двумя щелчками мыши.