git-svn kein git befehl?

108

Beim Versuch, einen alten SVN-Speicherauszug eines Projekts unter Git-Kontrolle zu bringen, stieß ich auf ein interessantes Problem. Immer wenn ich ausgeführt git svnwerde, wird eine Fehlermeldung angezeigt, dass es sich nicht um einen Git-Befehl handelt. Es gibt jedoch eine Dokumentation dafür, die ich verwenden kann git help. Stimmt etwas mit meiner Installation nicht oder fehlt mir hier nur etwas?

Bearbeiten: Ich sollte wahrscheinlich auch erwähnen, dass ich msysGit Version 1.6.1.9.g97c34 unter Windows XP ausführe, und der Fehler, den ich bekomme, ist:

$ git svn 
git: 'svn' ist kein
Git-Befehl. Siehe 'git --help'.

Meinten Sie eine davon?
        fsck
        Show
Cristián Romo
quelle

Antworten:

16

Ich bin nicht sicher, ob git svn jemals mit der neuesten Git Windows-Distribution (nach 1.5.6) funktioniert hat.

Viele Probleme wurden bereits gemeldet , daher sind sie git svnmöglicherweise in aktuellen msysGit-Versionen nicht enthalten.

Eine andere derzeit aktive "Git on Windows" -Entwicklung mingw.git gibt in ihrer README an, dass svn nicht funktioniert.

Dieser Thread von Msysgit deutet darauf hin, dass git svn an einigen Stellen wieder integriert werden kann, aber die Fortschritte sind immer noch langsam.


Update: von MSysGit1.6.2 (Anfang März 2009) git-svnfunktioniert wieder . Siehe diese SO-Frage .


Update: mit einem modernen (2017) Git für Windows 2.x , git svnist bereits enthalten.
Keine Notwendigkeit sudo apt-get install git-svn, was ohnehin nur in einer WSL-Shell-Sitzung (Windows Subsystem for Linux) möglich wäre.

VonC
quelle
Git SVN ist sicherlich mit Git jetzt unter Windows gebündelt :)
Tod Thomson
1
@TodThomson Ich stimme zu, und das sagt mein Update vom März 2009.
VonC
2
für Windows 10 Benutzersudo apt-get install git-svn
siehe
266

Ich überprüfe nur meine neu installierte Ubuntu-Box und sie wurde selbst mit installiertem Git-Core nicht installiert. Eine einfache:

sudo apt-get install git-svn

oder Ihr Distributionsäquivalent sollte es beheben.

Hacintosh
quelle
32

Unter Ubuntu:

sudo add-apt-repository ppa:git-core/ppa
apt-get update
sudo apt-get install git-svn
alexsaintx
quelle
4
Der ppa ist optional. git-svn ist im Standard-Repository enthalten.
jgomo3
Alte Frage, aber immer noch, wenn git-svn unter Ubuntu installiert ist, sollte hinzugefügt werden, dass wir git svn und nicht git-svn verwenden müssen
nsaura
Ich brauchte den ppa-Teil auf Ubuntu 16.
Sridhar Sarnobat
apt-get updatebraucht sudoauch. Ich habe versucht, die Antwort zu aktualisieren, aber da die Bearbeitung weniger als 6 Zeichen umfasst, kann ich dies nicht tun
Pau Fracés
6

Unter meinem System hatte ich folgende Probleme:

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

weil ich keine Subversion Perl-Bindungen installiert habe. Versuchen Sie, sie zu installieren und den Befehl erneut auszuführen.

jfsantos
quelle
3
Ich habe dies auch mit den Perl-Bindungen gesehen, die an einem anderen Ort installiert wurden als von Git erwartet. mit einem Symlink korrigiert.
Paul
6

Für die Nachwelt: Unter CentOS 7 einfach ausführen sudo yum install git-svn.

Dave Gregory
quelle
4

Ich hatte den gleichen Fehler unter Cygwin 1.7. Es wurde durch die Installation des git-svn-Pakets mit Cygwin-Setup gelöst.

Esko Luontola
quelle
3

Auf Gentoo sollten Sie git mit USE = "subversion" erstellen.

user1012316
quelle
3

MacPorts-Version:

port install git +svn

(Hinweis: Sie müssen wahrscheinlich port deactivate gitzuerst)

merv
quelle
2

Hatte ein ähnliches Problem mit RHEL6, dh

Git / SVN.pm kann in @INC nicht gefunden werden (@INC enthält: / usr / local / share / perl5 / usr / local / lib64 / perl5 / usr / lib64 / perl5 / vendor_perl / usr / share / perl5 / vendor_perl / usr / lib64 / perl5 / usr / share / perl5.) in der Zeile 25 unter / usr / local / libexec / git-core / git-svn.

Meine Lösung:

sudo yum install subversion-perl
chmod 755  /usr/local/share/perl5/ (and sub dirs, as they were only readable by root)
rauben
quelle
Das war genau mein Problem. Das /usr/local/share/perl5Verzeichnis und der Inhalt benötigten diese Berechtigungen. Danke dir!
Andrew Kirna
2

Es wurde nicht auf meiner Neuinstallation von Ubuntu auf WSL installiert -

sudo apt install git-svn

sortiert es:

❯ git svn
git-svn - bidirectional operations between a single Subversion tree and git
...
drkvogel
quelle
1

Wenn git-svn nicht Teil von mSysGit ist, empfehle ich, einen kleinen UNIX-Server zu verwenden, um Ihr Gateway-Repository zu hosten, das Ihr svn-Repository klont, und dieses Repository dann auf Ihren Windows-Computer zu klonen. Dies ist der Ansatz, den ich für die Interaktion mit CVS von Git aus verwende.

Skiphoppy
quelle
1

Unter CentOS habe ich verwendet

sudo yum install git-svn
Rogério Arantes
quelle
0

Auf Fedora musste ich es mit installieren

sudo dnf install -y git-svn
Isapir
quelle