วิธีกำหนดค่าพร็อกซี HTTP สำหรับ svn


96

ฉันต้องการที่จะตรวจสอบรหัสจากที่เก็บhttp://code.sixapart.com/svn/perlbal/ ฉันสามารถเข้าถึง URL ที่เก็บได้โดยการตั้งค่าพร็อกซีเท่านั้น ฉันเดาว่าฉันต้องการรับรหัสจาก URL เดียวกันโดย svn ฉันต้องกำหนดค่าพร็อกซีด้วย ใครในพวกคุณช่วยบอกวิธีกำหนดค่าพร็อกซี HTTP ใน svn ได้ไหม

อย่างไรก็ตามฉันใช้svnไคลเอนต์บรรทัดคำสั่งภายใต้ Linux

คำตอบ:


126

คุณเคยเห็นรายการคำถามที่พบบ่อยจะเกิดอะไรขึ้นถ้าฉันอยู่หลังพร็อกซี เหรอ?

... แก้ไขไฟล์การกำหนดค่า "เซิร์ฟเวอร์" ของคุณเพื่อระบุว่าจะใช้พร็อกซีใด ตำแหน่งไฟล์ขึ้นอยู่กับระบบปฏิบัติการของคุณ บน Linux หรือ Unix จะอยู่ในไดเร็กทอรี "~ / .subversion" ใน Windows จะอยู่ใน "% APPDATA% \ Subversion" (ลอง "echo% APPDATA%" โปรดทราบว่านี่คือไดเรกทอรีที่ซ่อนอยู่)

สำหรับฉันสิ่งนี้เกี่ยวข้องกับการไม่แสดงความคิดเห็นและการตั้งค่าบรรทัดต่อไปนี้:

#http-proxy-host=my.proxy
#http-proxy-port=80
#http-proxy-username=[username]
#http-proxy-password=[password]

มีใครรู้บ้างว่ามีวิธีกำหนดค่าให้ลองใช้พร็อกซีและถอยกลับไปใช้การเชื่อมต่อเครือข่ายพื้นฐานหากไม่มีพร็อกซี ฉันมีพร็อกซีในที่ทำงาน แต่เมื่อฉันอยู่ห่างไกลฉันต้องการใช้ SVN โดยไม่ต้องเปิดไฟล์กำหนดค่าและแสดงความคิดเห็นในบรรทัดสำหรับพร็อกซี
Erik Mitchell

1
สำหรับฉันโซลูชัน Kimvais ด้านล่างช่วยได้ ฉันต้องยกเลิกการแสดงความคิดเห็นในส่วนด้านล่าง "[global]" ในตอนแรกฉันไม่ได้ใส่ความคิดเห็นในบรรทัดเดียวกันในครั้งแรกที่เกิดขึ้นซึ่งไม่ได้ช่วยอะไร
เทเวศร์

@ErikMitchell: สร้างไฟล์ config และสคริปต์สองเวอร์ชันซึ่งอนุญาตให้คุณเปลี่ยนได้ อ่านเอกสารระบบปฏิบัติการของคุณเกี่ยวกับวิธีการเชื่อมต่อกับกลไกการค้นหาเครือข่ายและเรียกใช้สคริปต์ที่ถูกต้องเมื่อแล็ปท็อปของคุณสังเกตเห็นว่าอยู่ที่ไหน
Aaron Digulla

2
มันใช้ได้สำหรับฉัน แต่รหัสผ่านยังคงเก็บเป็นข้อความธรรมดา ฉันไม่ต้องการให้รหัสผ่านของฉันเปิดเผยเช่นนี้ มีวิธีจัดโครงร่างนี้หรือไม่?
Pmt

62

คุณสามารถหาคำแนะนำที่นี่ โดยทั่วไปคุณเพียงแค่เพิ่ม

[global]
http-proxy-host = ip.add.re.ss
http-proxy-port = 3128
http-proxy-compression = no

ไปยัง~/.subversion/serversไฟล์ของคุณ


7
นี่คือการกำหนดค่าฝั่งไคลเอ็นต์ ไฟล์ 'เซิร์ฟเวอร์' หมายถึงการตั้งค่าเพื่อเชื่อมต่อกับเซิร์ฟเวอร์ ดูsvnbook.red-bean.com/en/1.1/ch07.html#svn-ch-7-sect-1.3.1
Kimvais

ลิงก์ svnbook ล่าสุด (v1.7) สำหรับการกำหนดค่าไฟล์ "เซิร์ฟเวอร์": svnbook.red-bean.com/en/1.7/…
michael

11

ใน windows 7 คุณอาจต้องแก้ไขไฟล์นี้

C: \ Users \ <UserName> \ AppData \ Roaming \ Subversion \ servers

[global]
http-proxy-host = ip.add.re.ss
http-proxy-port = 3128

10

มีสองแนวทางทั่วไปสำหรับสิ่งนี้:

หากคุณใช้ Windows คุณสามารถเขียนhttp-proxy-ตัวเลือกลงใน Windows Registryได้ ค่อนข้างสะดวกหากคุณต้องการใช้การตั้งค่าพร็อกซีในสภาพแวดล้อม Active Directory ผ่านวัตถุนโยบายกลุ่ม


1
ใน linux คุณสามารถใช้alias svn-my-proxy='svn --config-option ...'เพื่อให้สามารถใช้งานsvn-my-proxy co http://svn/repo/trunkได้ สิ่งนี้ช่วยให้คุณสามารถสลับระหว่างการกำหนดค่าพร็อกซี ( svn-my-proxy co) และไม่มีพร็อกซี ( svn co) ได้อย่างง่ายดายขึ้นอยู่กับเครือข่ายที่เครื่องของคุณเปิดอยู่ในขณะนั้น คุณสามารถเพิ่มaliasคำสั่งเพื่อ~/.bashrcสร้างใหม่ในการเข้าสู่ระบบ bash ครั้งต่อไป ช่วยฉันได้มากระหว่างเครือข่ายที่ทำงานกับเครือข่ายในบ้าน!
Drew Anderson

0

ใน TortoiseSVN คุณสามารถกำหนดค่าพร็อกซีเซิร์ฟเวอร์ภายใต้การตั้งค่า => เครือข่าย


จะดีมากถ้าคุณสามารถเพิ่มภาพหน้าจอ
Petter Friberg

-2

ส่วนใหญ่ * nixen เข้าใจตัวแปรสภาพแวดล้อม 'http_proxy' เมื่อดำเนินการร้องขอเว็บ

export http_proxy=http://my-proxy-server.com:8080/
svn co http://code.sixapart.com/svn/perlball/

ควรทำเคล็ดลับ ไลบรารี http ส่วนใหญ่ตรวจสอบตัวแปรสภาพแวดล้อมนี้ (และอื่น ๆ )


26
น่าเศร้าที่การโค่นล้มยังไม่ให้เกียรติ http_proxy และอาจจะไม่เป็นเช่นนั้น ดูปัญหาได้ที่subversion.tigris.org/issues/show_bug.cgi?id=1327
Stefan Lasiewski

4
นั่นเป็นเพียงมหากาพย์ ดีใจที่รู้ว่าเป็นเช่นนั้น แต่ก็ควรรู้วิธีที่ถูกต้องเช่นกัน
Petesh

3
ขอบคุณสำหรับหัวขึ้น. ฉันอยากรู้อยากเห็น: ภายใต้ Ubuntu 14.10 การhttp_proxyประชุมดูเหมือนจะใช้งานได้ (SVN v1.8.10) แต่ไม่ได้อยู่ภายใต้ Centos 6.6 (SVN v1.6.11) ฉันค้นหาในบันทึกการเปลี่ยนแปลงแต่ไม่พบสิ่งใดที่ชัดเจนเพียงพอ มีความคิดว่าจะได้รับการแก้ไขหรือไม่?
Anto

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