ยกเลิกการกระทำใน TortoiseSVN


99

ฉันตกลงไฟล์จำนวนมาก (หลายสิบไฟล์ในโฟลเดอร์ต่างๆ) โดยบังเอิญ อะไรคือวิธีที่ง่ายที่สุดสะอาดที่สุด (และปลอดภัยที่สุด!) ในการ 'เลิกทำ' ที่คอมมิตโดยไม่ต้องลบไฟล์ออกจากไดเร็กทอรีการทำงานของฉัน

คำตอบ:


151

ไปแสดงเข้าสู่หน้าจอเลือกแก้ไขที่คุณต้องการยกเลิกคลิกขวาและเลือกการเปลี่ยนแปลงเปลี่ยนกลับจากการแก้ไขนี้นี้จะทำย้อนกลับผสาน


8
นั่นคือสิ่งที่ฉันคาดหวัง แต่ไม่มีวี่แววในการเปิดตัวเต่าล่าสุด
Anthony Main

39
อย่าลืมกระทำในภายหลังเพราะมันจะรวมเข้าด้วยกันในเครื่อง
pihentagy

5
อย่าลืมอัปเดตสำเนาการทำงานของคุณก่อนดำเนินการนี้มิฉะนั้นจะไม่มีอะไรเกิดขึ้น
Florian Brucker

1
เอกสารเกี่ยวกับขั้นตอนนี้: tortoisesvn.net/docs/release/TortoiseSVN_en/…
Costa

TortoiseSVN> Show Log> <select your old revesion>> Revision this revision tortoisesvn.net/docs/nightly/TortoiseSVN_en/…
Satyendra

15

คุณอาจต้องใช้บรรทัดคำสั่ง แต่คุณสามารถใช้คำสั่ง SVN merge และระบุการแก้ไขย้อนกลับเพื่อย้อนกลับคอมมิตได้อย่างมีประสิทธิภาพ สมมติว่าการกระทำที่ไม่ดีของคุณคือ r1123 คุณจะทำ:

svn merge -r1123:1122 <url of your working copy>

ไม่มีอะไรเปลี่ยนแปลงเมื่อฉันทำเช่นนี้: svn merge -r 1880: 1879 server / myproject / branch / problem42 ฉันได้ลองทั้งสองอย่างโดยมีช่องว่างเช่นนี้ "-r 1880: 1879" และไม่มีช่องว่างเช่นนี้ "-r1880: 1879" ถ้าฉันเรียกใช้ "svn st" หลังจากนั้นก็ไม่มีอะไรเปลี่ยนแปลง
neoneye

2

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

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


4
สิ่งนี้จะไม่บอกคุณว่าการแก้ไขของคุณล้าสมัยและต้องการให้คุณอัปเดตก่อนที่จะตกลง? ฉันคิดว่าคุณต้องรวมการแก้ไขก่อนหน้านี้แทนที่จะอัปเดตเป็นเวอร์ชันเก่า
Mnebuerquo

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