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ć

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


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


32

W systemie Ubuntu:

sudo add-apt-repository ppa:git-core/ppa
apt-get update
sudo apt-get install git-svn

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.


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


4

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



3

Wersja MacPorts:

port install git +svn

(Uwaga: prawdopodobnie musisz port deactivate gitnajpierw)


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)

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

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.



0

W Fedorze musiałem go zainstalować z

sudo dnf install -y git-svn
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.