"เปรียบเทียบกับเวอร์ชันพื้นที่ทำงาน" และ "เปรียบเทียบกับเวอร์ชันล่าสุด" แตกต่างกันอย่างไร


91

ฉันใช้ Visual Studio 2012 กับ TFS เมื่อใดก็ตามที่ฉันต้องการเปรียบเทียบไฟล์ที่เช็คเอาต์ฉันมีสองตัวเลือกให้เลือก:

  1. เปรียบเทียบกับเวอร์ชันพื้นที่ทำงาน
  2. เปรียบเทียบกับเวอร์ชันล่าสุด

ภาพหน้าจอ

อะไรคือความแตกต่าง ?

คำตอบ:


78

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

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

เมื่อใช้Get Specific Versionตัวเลือกนี้คุณสามารถดึงไฟล์เวอร์ชันใดก็ได้ไปยังพื้นที่ทำงานภายในของคุณ คุณยังสามารถดึงไฟล์จากเวอร์ชันต่างๆมาไว้ในพื้นที่ทำงานของคุณได้อีกด้วย เมื่อคุณเลือกตัวเลือกนี้การเปรียบเทียบจะเกิดขึ้นกับเวอร์ชันที่อยู่ในพื้นที่ทำงานของคุณ

เปรียบเทียบหน้าจอ


"เมื่อคุณเลือกตัวเลือกนี้จะมีการเปรียบเทียบกับเวอร์ชันที่อยู่ในพื้นที่ทำงานของคุณ" เปรียบเทียบกับอะไร?
Bilal Fazlani

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

2
ด้วยเวอร์ชันชุดการเปลี่ยนแปลงที่คุณดาวน์โหลดไปยังพื้นที่ทำงานที่เลือกครั้งล่าสุดพร้อมกับสิ่งที่อยู่ในดิสก์
jessehouwing

2
เพื่อเพิ่มความชัดเจนยิ่งขึ้นการรับเวอร์ชันพื้นที่ทำงานอาจแตกต่างจากเวอร์ชันล่าสุดหรือแบบเดียวกับเวอร์ชันล่าสุด ทั้งหมดขึ้นอยู่กับสิ่งที่คุณดึงลงมาจากที่เก็บของคุณ
Callat

1
ตัวอย่าง: คุณอยู่ในทีมและในวันที่ 3/5 คุณจะได้รับไฟล์ คุณแก้ไข แต่ไม่ได้เช็คอินเมื่อวันที่ 5/5 คุณเปรียบเทียบกับเวอร์ชันล่าสุดและคุณพบว่าคุณพบความแตกต่างมากกว่าที่คาดไว้นั่นเป็นเพราะมีคนทำการเปลี่ยนแปลงไฟล์เดียวกันมากกว่า แต่ถ้าคุณเปรียบเทียบกับเวอร์ชัน Workspace คุณจะได้รับเฉพาะความแตกต่างระหว่างการเปลี่ยนแปลงในเครื่องของคุณและไฟล์ต้นฉบับเป็นอย่างไรเมื่อคุณได้รับคืนในตอนแรก มีประโยชน์มากในการตรวจสอบสิ่งที่คุณเปลี่ยนแปลงเท่านั้น ...
Roger

78
  • การเปรียบเทียบกับเวอร์ชันของพื้นที่ทำงานจะเปรียบเทียบไฟล์ที่แก้ไขกับเวอร์ชันของไฟล์ในเวลาที่คุณชำระเงิน (เปรียบเทียบเฉพาะการเปลี่ยนแปลงของคุณ )

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

http://codereferences.blogspot.ca/2012/03/tfs-compare-with-workspace-version.html


1
serhio คุณและ @jessehouwing กำลังระบุพฤติกรรมที่ขัดแย้งกันสำหรับประเภทการเปรียบเทียบเวอร์ชัน Workspace ดูเหมือนว่าเขาจะระบุว่าไฟล์เวอร์ชันล่าสุดจะถูกใช้หากพื้นที่ทำงานนั้นถูกกำหนดค่าให้ใช้เวอร์ชันล่าสุด อย่างไรก็ตามสิ่งที่คุณพูดเป็นนัยว่าไฟล์ต้นฉบับอาจไม่จำเป็นต้องเป็นเวอร์ชันล่าสุด แต่เป็นเวอร์ชันของไฟล์ในระหว่างการชำระเงิน
samis

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

5

คำตอบของ @ serhio 3/28/14 เป็นคำตอบในการบรรยายที่ยอดเยี่ยม อย่างไรก็ตามฉันแน่ใจว่าหลายคน (รวมถึงตัวฉันเอง) ต้องการการสำรองข้อมูลด้วยตัวอย่างและนี่คือ

  1. สำหรับทุกคน "Lastest Version" = การเปลี่ยนแปลง # 1
  2. คุณ "รับข้อมูลล่าสุด"
  3. สำหรับคุณ "Workspace Version" = Changeset # 1
  4. คุณทำการเปลี่ยนแปลง
  5. นักพัฒนา B "รับข้อมูลล่าสุด"
  6. สำหรับนักพัฒนา B "เวอร์ชันพื้นที่ทำงาน" ยัง = ชุดการเปลี่ยนแปลง # 1
  7. นักพัฒนา B ทำการเปลี่ยนแปลง
  8. นักพัฒนา B "เช็คอิน"
  9. สำหรับทุกคน "Lastest Version" = การเปลี่ยนแปลง # 2
  10. สำหรับ Developer B "Workspace Version" = Changeset # 2
  11. สำหรับคุณ "Workspace Version" ยังคง = Changeset # 1
  12. คุณ "รับข้อมูลล่าสุด" "ผสานความขัดแย้ง" (ถ้าจำเป็น) และ "เช็คอิน"
  13. สำหรับทุกคน "Lastest Version" = การเปลี่ยนแปลง # 3
  14. สำหรับคุณ "Workspace Version" = Changeset # 3
  15. สำหรับนักพัฒนา B "เวอร์ชันพื้นที่ทำงาน" ยังคง = ชุดการเปลี่ยนแปลง # 2

0

ในการสร้างคำตอบใหม่:

ไฟล์ในเครื่องจะเป็นไฟล์ที่คุณใช้งานอยู่เสมอ

ไฟล์เซิร์ฟเวอร์อาจเป็น:

  1. เวอร์ชันล่าสุดรวมถึงการเช็คอินอื่น ๆ ทั้งหมด (คุณจะเห็นการเปลี่ยนแปลงของคุณเช่นเดียวกับการเปลี่ยนแปลงของคนอื่น ๆ )

  2. เวอร์ชันเหมือนเดิมเมื่อคุณเช็คเอาต์ (คุณจะเห็นเฉพาะการเปลี่ยนแปลงของคุณแม้ว่าคนอื่นจะเช็คอินแล้วก็ตาม)

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

ดังนั้นหากคุณต้องการเปรียบเทียบสิ่งที่คุณทำกับสิ่งที่คุณทำเมื่อคุณเริ่มต้นให้เลือกเวอร์ชันพื้นที่ทำงาน

หากคุณต้องการเปรียบเทียบสิ่งที่คุณทำกับสิ่งที่คนอื่นทำให้เลือกเวอร์ชันล่าสุด

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