git-svn - это не команда git?

108

Пытаясь получить старый svn-дамп проекта под управлением git, я столкнулся с интересной проблемой. Всякий раз, когда я запускаю git svn, я получаю сообщение об ошибке, что это не команда git, но для нее есть документация, которую я могу использовать git help. Что-то не так с моей установкой, или мне просто что-то здесь не хватает?

Изменить: я, вероятно, также должен упомянуть, что я запускаю msysGit версии 1.6.1.9.g97c34 под Windows XP, и я получаю следующую ошибку:

$ git svn 
git: 'svn' не является
git-команда. См. 'Git --help'.

Вы имели в виду одно из этих?
        Fsck
        шоу
Кристиан Ромо
источник

Ответы:

16

Я не уверен, что git svn когда-либо работал с последним дистрибутивом Git Windows (сообщение 1.5.6).

Ранее сообщалось о многих проблемах , поэтому они git svnмогут не включаться в текущие выпуски msysGit.

Другая текущая активная разработка «Git для Windows» - mingw.git - в своем README заявляет , что svn не работает.

Этот поток Msysgit действительно предполагает, что git svn может быть реинтегрирован в некоторые моменты, но прогресс все еще медленный.


Обновление: из MSysGit1.6.2 (начало марта 2009 г.), git-svnснова работает . См. Этот вопрос SO .


Обновление: с современным (2017 г.) Git для Windows , 2.x , git svnуже включен.
Нет необходимости sudo apt-get install git-svn, что в любом случае было бы возможно только в сеансе оболочки WSL (подсистема Windows для Linux) .

VonC
источник
git svn, безусловно, теперь в комплекте с Git для Windows :)
Тод Томсон
1
@TodThomson Я согласен, и об этом говорится в моем обновлении от марта 2009 года.
VonC
2
для пользователей Windows 10sudo apt-get install git-svn
behelit
266

Я просто проверяю свой недавно установленный ящик ubuntu, и он не был установлен даже с установленным git-core. Простой:

sudo apt-get install git-svn

или ваш дистрибутив должен исправить это.

хакинтош
источник
32

В Ubuntu:

sudo add-apt-repository ppa:git-core/ppa
apt-get update
sudo apt-get install git-svn
Alexsaintx
источник
4
PPA не является обязательным. git-svn входит в стандартный репозиторий.
jgomo3 04
Старый вопрос, но все же, когда git-svn установлен на Ubuntu, я думаю, следует добавить, что мы должны использовать git svn, а не git-svn
nsaura
Мне нужна была часть
ppa в
apt-get updatesudoтакже нуждается . Я попытался обновить ответ, но, поскольку редактирование составляет менее 6 символов, SO не позволяет мне это сделать
Пау Фрасес
6

В моей системе у меня была такая проблема:

$ git svn
Can't locate SVN/Core.pm in @INC (@INC contains: /usr/lib/perl5/site_perl/5.10.0
/usr/lib/perl5/5.10.0/i486-linux-thread-multi
/usr/lib/perl5/5.10.0
/usr/lib/perl5/site_perl/5.10.0/i486-linux-thread-multi
/usr/lib/perl5/site_perl/5.8.8
/usr/lib/perl5/site_perl
/usr/lib/perl5/vendor_perl/5.10.0/i486-linux-thread-multi
/usr/lib/perl5/vendor_perl/5.10.0
/usr/lib/perl5/vendor_perl/5.8.8
/usr/lib/perl5/vendor_perl .) at
/usr/libexec/git-core/git-svn line 29.

потому что у меня не установлены привязки Subversion Perl. Попробуйте установить их и снова запустить команду.

Jfsantos
источник
3
Я также видел это с привязками Perl, установленными в другом месте, чем ожидал Git; исправлено символической ссылкой.
Пол
6

Для потомков: на CentOS 7 просто запустите sudo yum install git-svn.

Дэйв Грегори
источник
4

У меня была такая же ошибка под Cygwin 1.7. Решилось установкой пакета git-svn с установкой Cygwin.

Эско Луонтола
источник
3

В Gentoo вы должны собрать git с USE = "subversion"

user1012316
источник
3

Версия MacPorts:

port install git +svn

(Примечание: вам, вероятно, нужно port deactivate gitсначала)

Мерв
источник
2

Была аналогичная проблема на RHEL6, т.е.

Не удается найти Git / SVN.pm в @INC (@INC содержит: / usr / local / share / perl5 / usr / local / lib64 / perl5 / usr / lib64 / perl5 / vendor_perl / usr / share / perl5 / vendor_perl / usr / lib64 / perl5 / usr / share / perl5.) в / usr / local / libexec / git-core / git-svn, строка 25.

Мое решение:

sudo yum install subversion-perl
chmod 755  /usr/local/share/perl5/ (and sub dirs, as they were only readable by root)
Роб
источник
Это была моя проблема. Для /usr/local/share/perl5каталога и содержимого необходимы эти разрешения. Спасибо!
Эндрю Кирна
2

Он не был установлен в моей новой установке Ubuntu на WSL -

sudo apt install git-svn

отсортировал это:

❯ git svn
git-svn - bidirectional operations between a single Subversion tree and git
...
Drkvogel
источник
1

Если git-svn не является частью mSysGit, я рекомендую использовать небольшой сервер UNIX для размещения репозитория шлюза, который клонирует ваш репозиторий svn, а затем клонировать этот репозиторий на ваш компьютер с Windows. Это подход, который я использую для взаимодействия с CVS из git.

skiphoppy
источник
1

На CentOS я использовал

sudo yum install git-svn
Рожерио Арантес
источник
0

В Fedora мне пришлось установить его с помощью

sudo dnf install -y git-svn
isapir
источник