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) .


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

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. Попробуйте установить их и снова запустить команду.


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




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
...

1

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



0

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

sudo dnf install -y git-svn
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.