วิธีเช็คเอาต์การแก้ไขการโค่นล้มเฉพาะจากบรรทัดคำสั่ง


364

ฉันต้องการตรวจสอบการแก้ไขเฉพาะของโฟลเดอร์ในการโค่นล้มโดยใช้บรรทัดคำสั่ง

ผมไม่เห็นตัวเลือกสำหรับการระบุจำนวนการแก้ไขในTortoiseProc.exe,

TortoiseProc.exe /command:checkout <url>

ฉันจะได้รับการแก้ไขที่ฉันต้องการได้อย่างไร เป็นTortoiseProc.exeเครื่องมือที่เหมาะสมสำหรับสิ่งที่ฉันต้องการทำหรือไม่?

คำตอบ:


469

หากคุณมีการเช็กเอาต์แบบโลคัลแล้วคุณสามารถcdไปที่ที่เช็กเอาต์ได้จากนั้นใช้ไวยากรณ์นี้

$ svn up -rXXXX

ref: ชำระเงินการแก้ไขที่เฉพาะเจาะจงจากการโค่นล้มจากบรรทัดคำสั่ง


ด้วยเหตุผลบางอย่างมันไม่ทำอะไรเลยสำหรับฉัน ยังอยู่ที่การแก้ไขเก่า
IgorGanapolsky

2
@IgorGanapolsky คุณแก้ไขไฟล์ที่คุณพยายามจะอัพเดทอยู่หรือไม่?

คุณทำการฮาร์ดรีเซ็ตอย่างไร (เพิกเฉยต่อความขัดแย้ง)
Dilip Raj Baral

313

ทั้ง

svn checkout url://repository/path@1234

หรือ

svn checkout -r 1234 url://repository/path

3
ฉันต้องลบที่ว่างหลังจาก -r ดังนั้น "-r1234" จึงเหมาะกับฉัน
Elijah Lofgren

257

มีเหตุผลใดที่จะใช้ TortoiseProc แทนที่จะเป็นบรรทัดคำสั่ง svn ปกติ?

ฉันต้องการใช้:

svn checkout svn://somepath@1234 working-directory

(เพื่อรับการแก้ไข 1234)


36

คุณไม่ควรใช้ TortoiseProc.exe เป็นไคลเอนต์การโค่นล้มบรรทัดคำสั่ง! TortoiseProc ควรใช้สำหรับ GUI ของ TortoiseSVN เท่านั้น ดูหมายเหตุในคู่มือของ TortoiseSVN :

โปรดจำไว้ว่า TortoiseSVN เป็นไคลเอนต์ GUI และคู่มือการทำงานอัตโนมัตินี้จะแสดงวิธีสร้างไดอะล็อก TortoiseSVN เพื่อรวบรวมผู้ใช้ หากคุณต้องการเขียนสคริปต์ที่ไม่ต้องการอินพุตคุณควรใช้ไคลเอนต์บรรทัดคำสั่งการโค่นล้มอย่างเป็นทางการแทน

ใช้การโค่นล้มลูกค้า svn.exe บรรทัดคำสั่ง ด้วยไคลเอนต์บรรทัดคำสั่งคุณสามารถ

คุณอาจสังเกตเห็นว่าด้วยsvn checkoutและsvn exportคุณสามารถป้อนหมายเลข REV เป็น--revision REVอาร์กิวเมนต์และตาม@REVหลัง URL คนแรกเรียกว่าการแก้ไขผ่าตัดและคนที่สองเรียกว่าการแก้ไขหมุด อ่าน SVNBook สำหรับข้อมูลเพิ่มเติมเกี่ยวกับหมุดและแนวคิดการแก้ไขการผ่าตัด


8

svn checkout เพื่อแก้ไขที่เก็บของคุณอยู่บนเซิร์ฟเวอร์อื่น

ใช้svn logคำสั่งเพื่อค้นหาการแก้ไขที่มีอยู่:

svn log

สิ่งที่พิมพ์:

------------------------------------------------------------------------
r762 | machines | 2012-12-02 13:00:16 -0500 (Sun, 02 Dec 2012) | 2 lines

------------------------------------------------------------------------
r761 | machines | 2012-12-02 12:59:40 -0500 (Sun, 02 Dec 2012) | 2 lines

r761หมายเหตุจำนวน นี่คือคำอธิบายคำสั่ง:

svn export http://url-to-your-file@761 /tmp/filename

ฉันใช้คำสั่งนี้โดยเฉพาะ:

svn export svn+ssh://machines@mywebsite.com/home1/oct/calc/calcFeatures.m@761 calcFeatures.m

ซึ่งทำให้ calcFeatures.m ฉบับแก้ไข 761 ถูกตรวจสอบไปยังไดเรกทอรีปัจจุบัน




2

ดูเหมือนว่าคุณสามารถใช้เบราว์เซอร์พื้นที่เก็บข้อมูล คลิกปุ่มการแก้ไขที่ด้านบนขวาและเปลี่ยนเป็นการแก้ไขที่คุณต้องการ จากนั้นคลิกขวาที่ไฟล์ของคุณในเบราว์เซอร์และใช้ 'คัดลอกไปยังสำเนาทำงาน ... ' แต่เปลี่ยนชื่อไฟล์ที่จะตรวจสอบเพื่อหลีกเลี่ยงการปะทะกัน


1

คุณจะต้องใช้ svn โดยตรง:

svn checkout URL[@REV]... [PATH]

และ

svn help co

ให้ความช่วยเหลือเพิ่มเติมเล็กน้อย


2
เท่าที่ฉันเห็นฉันคิดว่าตัวอย่างสามารถช่วยได้ คุณรวมหรือไม่รวมวงเล็บ? ประมาณ 3 ช่วงคือเท่าไหร่? แล้วพื้นที่ว่างหลังจากช่วงเวลา 3 ช่วงคืออะไร? อักขระตัวใดที่เป็นตัวอักษรและตัวยึดตำแหน่งและอักขระที่เพิ่มเข้ามาสำหรับตัวยึดตำแหน่ง
ahnbizcad

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