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 รุ่นปัจจุบันเป็นอย่างมาก

mingw.gitการพัฒนา "Git บน Windows" ที่ใช้งานอยู่ในปัจจุบันจะระบุในREADMEว่า svn ไม่ทำงาน

นี้ด้าย msysgitไม่แนะนำให้ SVN คอมไพล์อาจจะ reintegrated ในบางจุด แต่ความคืบหน้ายังคงช้า


ปรับปรุง: จาก MSysGit1.6.2 (ช่วงต้นเดือนมีนาคม 2009) การทำงานอีกครั้งgit-svn ดูคำถาม SOนี้


อัปเดต: มีที่ทันสมัย (2017) Git สำหรับ Windows 2.x , git svnรวมอยู่
ไม่จำเป็นต้องsudo apt-get install git-svnมีซึ่งจะเป็นไปได้ในเซสชันเชลล์ WSL (Windows Subsystem for Linux)เท่านั้น


git svn มาพร้อมกับ Git ใน Windows แล้ว :)
Tod Thomson

1
@TodThomson ฉันเห็นด้วยและนั่นคือสิ่งที่ฉันอัปเดตเมื่อเดือนมีนาคม 2552
VonC

2
สำหรับผู้ใช้ windows 10sudo apt-get install git-svn
behelit

266

ฉันเพิ่งตรวจสอบกล่อง Ubuntu ที่ติดตั้งใหม่และไม่ได้ติดตั้งแม้ว่าจะติดตั้ง git-core แล้วก็ตาม ง่ายๆ:

sudo apt-get install git-svn

หรือเทียบเท่า distro ของคุณควรแก้ไข


32

บน Ubuntu:

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

4
ppa เป็นทางเลือก git-svn รวมอยู่ในที่เก็บมาตรฐาน
jgomo3

คำถามเก่า แต่เมื่อติดตั้ง git-svn บน Ubuntu ฉันคิดว่าควรเพิ่มว่าเราต้องใช้git svnไม่ใช่git-svn
nsaura

ฉันต้องการส่วน ppa บน Ubuntu 16
Sridhar Sarnobat

apt-get updatesudoยังต้องการ ฉันพยายามอัปเดตการตอบกลับ แต่เนื่องจากการแก้ไขน้อยกว่า 6 ตัวอักษรดังนั้นจึงไม่อนุญาตให้ฉันทำ
Pau Fracés

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 คาดไว้ แก้ไขด้วย symlink
พอล


4

ฉันมีข้อผิดพลาดเดียวกันภายใต้ Cygwin 1.7 ได้รับการแก้ไขโดยการติดตั้งแพ็คเกจ git-svn ด้วยการตั้งค่า Cygwin



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ไดเรกทอรีและเนื้อหาที่จำเป็นสิทธิ์เหล่านั้น ขอบคุณ!
Andrew Kirna

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 จากคอมไพล์



โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.