เหตุใดการชำระเงิน svn จึงรวมไฟล์ที่ถูกลบออกจากที่เก็บ

ฉันมี repo บนกล่อง Linux และเมื่อฉันเรียกดู repo ผ่าน TortoiseSVN ฉันจะเห็นว่าบางโฟลเดอร์ถูกลบออกจาก repo (ตามที่ควรจะเป็น) และเมื่อฉันทำการ "ชำระเงิน svn" ใหม่ (ไปยังไฟล์ใหม่ โฟลเดอร์) บนกล่อง Linux จะพยายามดึงไฟล์ที่ถูกลบเหล่านั้น

เหตุใด SVN จึงดึงข้อมูลไฟล์ที่ถูกลบเหล่านี้ และฉันจะบอกได้อย่างไรว่าไม่ทำเช่นนั้น

ฉันเห็นคำถามที่คล้ายกันนี้ แต่ไม่ได้แก้ไขปัญหาของฉัน:

ทำอย่างไร คุณหยุด SVN Checkout ไม่ให้นำไฟล์ที่ถูกลบออกจากโครงการกลับมาหรือไม่


svn
person kmoser    schedule 20.05.2011    source แหล่งที่มา
comment
คุณแน่ใจหรือว่าคุณกำลังเรียกดูพื้นที่เก็บข้อมูล (และไม่ใช่สำเนาที่ใช้งานได้) และสาขาที่ถูกต้อง   -  person nos    schedule 20.05.2011


คำตอบ (1)


มีเหตุผลเพียงไม่กี่ประการที่ SVN จะกู้คืนไฟล์ที่ถูกลบไปแล้ว

  1. ไฟล์ถูกลบในสาขา และคุณชำระเงินจากสาขาอื่นซึ่งยังมีไฟล์อยู่
  2. ไฟล์ถูกลบไปแล้วในเวอร์ชัน "HEAD" ปัจจุบัน และคุณกำลังตรวจสอบเวอร์ชันเก่าที่มีไฟล์อยู่ (เมื่อคุณอัปเดตเป็นเวอร์ชันที่ถูกลบภายใต้สถานการณ์นี้ ไฟล์จะหายไป)
  3. มีการออกคำสั่ง "svn Delete ... " แล้ว แต่คุณล้มเหลวในการดำเนินการลบกลับไปยังแผนผัง SVN ด้วย "svn commit ... "

ส่วนใหญ่แล้ว #3 ทำให้เกิดความสับสน เนื่องจากการลบ SVN ไม่ได้หมายความถึงการคอมมิตอัตโนมัติ (ดังนั้นคุณจึงสามารถลบร่วมกับการเปลี่ยนแปลงอื่นๆ ได้)

person Edwin Buck    schedule 20.05.2011