git-svn nie jest poleceniem git?

108

Podczas próby pobrania starego zrzutu svn projektu pod kontrolą gita napotkałem interesujący problem. Za każdym razem, gdy uruchamiam git svn, pojawia się błąd informujący, że nie jest to polecenie git, ale istnieje dokumentacja, którą mogę wyciągnąć git help. Czy coś jest nie tak z moją instalacją, czy po prostu coś mi tu brakuje?

Edycja: Powinienem również wspomnieć, że używam msysGit w wersji 1.6.1.9.g97c34 pod Windows XP, a błąd, który otrzymuję to:

$ git svn 
git: 'svn' nie jest plikiem
polecenie git. Zobacz „git --help”.

Miałeś na myśli jeden z nich?
        fsck
        pokazać
Cristián Romo
źródło

Odpowiedzi:

16

Nie jestem pewien, czy git svn kiedykolwiek współpracował z ostatnią dystrybucją Git Windows (post 1.5.6).

Wiele problemów zostało wcześniej zgłoszonych , więc git svnmogą one nie być uwzględnione w obecnych wersjach msysGit.

Inny obecnie aktywny program rozwoju „Git w systemie Windows” mingw.git stwierdza w swoim pliku README, że svn nie działa.

Ten wątek Msysgit sugeruje, że git svn może zostać ponownie zintegrowany w niektórych punktach, ale postęp jest nadal powolny.


Aktualizacja: z MSysGit1.6.2 (początek marca 2009), git-svnznów działa . Zobacz to pytanie SO .


Aktualizacja: z nowoczesnym (2017) Git dla Windows 2.x , git svnjest już dołączony.
Nie ma potrzeby sudo apt-get install git-svn, co i tak byłoby możliwe tylko w sesji powłoki WSL (Windows Subsystem for Linux) .

VonC
źródło
git svn jest z pewnością dołączony do Gita teraz w systemie Windows :)
Tod Thomson,
1
@TodThomson Zgadzam się i to właśnie mówi moja aktualizacja z marca 2009 roku.
VonC
2
dla użytkowników systemu Windows 10sudo apt-get install git-svn
behelit
266

Po prostu sprawdzam moją nowo zainstalowaną skrzynkę ubuntu i nie została ona zainstalowana nawet z zainstalowanym git-core. Prosty:

sudo apt-get install git-svn

lub twój odpowiednik dystrybucji powinien to naprawić.

hacintosh
źródło
32

W systemie Ubuntu:

sudo add-apt-repository ppa:git-core/ppa
apt-get update
sudo apt-get install git-svn
alexsaintx
źródło
4
PPA jest opcjonalne. git-svn znajduje się w standardowym repozytorium.
jgomo3
Stare pytanie, ale nadal, gdy git-svn jest zainstalowany na Ubuntu, myślę, że należy dodać, że musimy użyć git svn, a nie git-svn
nsaura
Potrzebowałem części ppa na Ubuntu 16.
Sridhar Sarnobat
apt-get updatepotrzebuje sudorównież. Próbowałem zaktualizować odpowiedź, ale ponieważ edycja ma mniej niż 6 znaków, więc nie pozwala mi tego zrobić
Pau Fracés
6

W moim systemie miałem ten problem:

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

ponieważ nie mam zainstalowanych powiązań Subversion Perl. Spróbuj je zainstalować i ponownie uruchomić polecenie.

jfsantos
źródło
3
Widziałem to również w przypadku powiązań Perla zainstalowanych w innej lokalizacji niż oczekiwał Git; poprawione za pomocą łącza symbolicznego.
Paul
6

Dla potomnych: w CentOS 7 po prostu uruchom sudo yum install git-svn.

Dave Gregory
źródło
4

Miałem ten sam błąd pod Cygwin 1.7. Zostało to rozwiązane poprzez zainstalowanie pakietu git-svn z instalatorem Cygwin.

Esko Luontola
źródło
3

W Gentoo powinieneś zbudować git z USE = "subversion"

user1012316
źródło
3

Wersja MacPorts:

port install git +svn

(Uwaga: prawdopodobnie musisz port deactivate gitnajpierw)

merv
źródło
2

Miałem podobny problem na RHEL6, tj.

Nie można zlokalizować Git / SVN.pm w @INC (@INC zawiera: / usr / local / share / perl5 / usr / local / lib64 / perl5 / usr / lib64 / perl5 / vendor_perl / usr / share / perl5 / vendor_perl / usr / lib64 / perl5 / usr / share / perl5.) w / usr / local / libexec / git-core / git-svn line 25.

Moje rozwiązanie:

sudo yum install subversion-perl
chmod 755  /usr/local/share/perl5/ (and sub dirs, as they were only readable by root)
Obrabować
źródło
To był dokładnie mój problem. /usr/local/share/perl5Katalog i zawartość potrzebne te uprawnienia. Dziękuję Ci!
Andrew Kirna
2

Nie został zainstalowany w mojej nowej instalacji Ubuntu na WSL -

sudo apt install git-svn

posortował to:

❯ git svn
git-svn - bidirectional operations between a single Subversion tree and git
...
drkvogel
źródło
1

Jeśli git-svn nie jest częścią mSysGit, polecam użycie małego serwera UNIX do hostowania repozytorium bramy, które klonuje repozytorium svn, a następnie sklonuje to repozytorium na komputer z systemem Windows. To jest podejście, którego używam do interakcji z CVS z git.

skiphoppy
źródło
1

Na CentOS użyłem

sudo yum install git-svn
Rogério Arantes
źródło
0

W Fedorze musiałem go zainstalować z

sudo dnf install -y git-svn
isapir
źródło