ฉันจะนำวิธีแก้ปัญหาของฉันใน Visual Studio กลับมาออนไลน์ใน TFS ได้อย่างไร


242

ฉันมีวิธีแก้ปัญหาของฉันใน Visual Studio 2012 (ซึ่งอยู่ภายใต้การควบคุมแหล่ง TFS) และเซิร์ฟเวอร์ TFS (2010) หยุดทำงาน เมื่อฉันทำการเปลี่ยนแปลงหนึ่งในไฟล์และพยายามบันทึกฉันได้รับแจ้งให้ถามว่าฉันต้องการเขียนทับไฟล์ว่าเซิร์ฟเวอร์ TFS หยุดทำงานหรือไม่ (จำคำที่ไม่ถูกต้อง) และข้อความต่อไปนี้ปรากฏใน หน้าต่างผลลัพธ์:

This solution is offline.  [Team Foundation Server: http://tfs1:8080/tfs/server]
The solution was offline during its previous session and will remain offline.

ฉันจะทำให้การเปลี่ยนแปลงไฟล์เป็นที่รู้จักในหมู่การเปลี่ยนแปลงที่รอดำเนินการและวิธีแก้ไขปัญหาทั้งหมดกลับมาออนไลน์ได้อย่างไร

คำตอบ:


504

ฉันค้นหาวิธีแก้ปัญหาออนไลน์และพบวิธีแก้ปัญหานี้แต่ไม่กระตือรือร้นกับการเปลี่ยนแปลงรีจิสทรีมากเกินไป

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

หลังจากค้นหาวิธีแก้ไขแล้วฉันพบเธรดฟอรัม msdnต่อไปนี้ซึ่งยืนยันข้างต้น


1
ทำงานให้ฉัน ขอบคุณ.
Bijimon

2
ทำงานให้ฉันขอบคุณมาก มันจะแปลกที่จะเข้าไปในรีจิสทรีสำหรับสิ่งนี้
Nick N.

วันนี้ฉันต้องการสิ่งนี้จริงๆ ขอบคุณที่ให้คำตอบ ใช้งานได้ดีมาก
Tony Abrams

2
ทำไมสิ่งนี้ไม่ปรากฏขึ้นก่อน ฉันเกือบพลาดคำตอบนี้ :(
เอเดรียน

4
นี่เป็นคำตอบที่ดีที่สุดและใช้งานได้ใน Visual Studio 2017 ไม่จำเป็นต้องแก้ไขรีจิสทรี
Wayland Young

9

เปลี่ยนชื่อไฟล์. SUO ของโซลูชันที่สอดคล้องกัน ไฟล์ SUO มีสถานะ TFS (ออนไลน์ / ออฟไลน์) ท่ามกลางโฮสต์ของสินค้าอื่น ๆ

ทำสิ่งนี้เฉพาะเมื่อ "คลิกขวาที่ชื่อโซลูชันที่ด้านบนสุดของ Explorer โซลูชันและเลือกตัวเลือก Go Online" ล้มเหลว (เพราะเช่นคุณติดตั้งพรีวิว VS2015)



6

(ขั้นตอนเพิ่มเติมจากวิธีแก้ปัญหาด้านบนหากคุณไม่ได้เชื่อมต่อค่ารีจิสทรีอัตโนมัติหรือค่าออฟไลน์)

สำหรับ Visual Studio 2015 เวอร์ชัน 14

  1. ปิดอินสแตนซ์ VS ทั้งหมด
  2. HKEY_CURRENT_USER \ SOFTWARE \ Microsoft \ VisualStudio \ 14.0 \ TeamFoundation \ Instances {YourServerName} \ Collections {TheCollectionName} (เพื่อไปยังไดเรกทอรีนี้บน Windows กดปุ่ม Windows + R และค้นหา "regedit")
  3. ตั้งค่าทั้งค่าออฟไลน์และการเชื่อมต่ออัตโนมัติเป็น 0
  4. หากคุณขาดคุณสมบัติอย่างใดอย่างหนึ่ง (ในกรณีของฉันฉันไม่มีการเชื่อมต่ออัตโนมัติ) ให้คลิกขวาและสร้างค่า DWORD (32- บิต) ใหม่ด้วยชื่อที่ขาดหายไป AutoReconnect หรือออฟไลน์ที่ต้องการ
  5. ตรวจสอบให้แน่ใจว่าค่าทั้งสองถูกตั้งค่าเป็นศูนย์
  6. รีสตาร์ทโซลูชันของคุณ

ข้อมูลเพิ่มเติม: บล็อก MSDN - โซลูชันของฉันจะออฟไลน์เมื่อใดและอย่างไร


3

ฉันใช้Visual Studio 2017รุ่น15.4.0 โดยเฉพาะเมื่อฉันเริ่มใช้ตัวเลือกโซลูชันน้ำหนักเบาสิ่งออฟไลน์นี้เกิดขึ้นกับฉัน ฉันพยายามแก้ไขปัญหาข้างต้นซึ่ง ได้แก่ :

  1. พยายามแก้ไขตัวเลือกใหม่ แต่ไม่เห็นตัวเลือกเมนูที่เหมาะสม ใช้งานไม่ได้
  2. คลิกขวาที่โซลูชันมีตัวเลือกออนไลน์และเมื่อฉันเลือกโซลูชันที่ให้ข้อความแสดงข้อผิดพลาดนี้: "โซลูชันออฟไลน์เนื่องจาก Team Foundation Server ที่เชื่อมโยงออฟไลน์ไม่สามารถระบุพื้นที่ทำงานสำหรับโซลูชันนี้ได้"

แล้วจากFile -> การควบคุมที่มา -> Advanced -> ควบคุมการเปลี่ยนแปลงแหล่งที่มา ฉันเห็นไฟล์ของฉัน ฉันเลือกพวกเขาแล้วเลือกตัวเลือกผูก ที่ทำงานให้ฉัน


2

คุณสามารถไปใช้โปรแกรมแก้ไขรีจิสทรี

  1. ปิดอินสแตนซ์ VS ทั้งหมด
  2. เปิดตัวแก้ไขรีจิสทรีและไปที่: HKEY_CURRENT_USER \ Software \ Microsoft \ VisualStudio \ 11.0 \ TeamFoundation \ Instances
  3. ค้นหาเซิร์ฟเวอร์ที่เหมาะสมเช่น: team32system1
  4. ไปที่คอลเล็กชันและคอลเลกชัน Default ของ nex: HKEY_CURRENT_USER \ Software \ Microsoft \ VisualStudio \ 11.0 \ TeamFoundation \ Instances \ team32system1 \ Collections \ DefaultCollection
  5. ตั้งค่าปุ่มออฟไลน์เป็น 0
  6. เปิดโซลูชันใน VS หลังจากนั้นป๊อปอัปจะปรากฏขึ้นซึ่งคำถามใดที่คุณต้องการนำวิธีการแก้ปัญหาไปยังโหมดออนไลน์

stackoverflow.com/questions/261525/…ฉันขอแนะนำหน้าต่อไปนี้นอกเหนือจากโซลูชันนั้น) ดีที่จะ
ปฏิเสธ

1

วิธีแก้ปัญหาด้านบนไม่ได้ผลกับฉันใน Visual Studio Community 2017 v15.7.1 อย่างใดไม่มีตัวเลือก "Go Online" ในเมนูบริบท ฉันลองแก้ไขรีจิสทรีตามที่แนะนำที่นี่ แต่แสดงให้ฉันเห็นว่าเกิดข้อผิดพลาดเท่านั้นซึ่งไม่พบการเชื่อมโยง สิ่งที่ใช้ได้ผลสำหรับฉันคือการปฏิเสธวิธีแก้ไขปัญหาไปยังเซิร์ฟเวอร์จากเมนูเปลี่ยนแหล่งที่มา

ไปที่File->Source Control->Advanced->Change Source Controlและตรวจสอบให้แน่ใจว่าโซลูชันของคุณเชื่อมโยงกับแหล่งควบคุมของคุณ หากไม่ใช่ (เช่นของฉัน) จากนั้นคลิกที่ปุ่มผูกมันจะค้นหาเซิร์ฟเวอร์ TFS ออนไลน์โดยอัตโนมัติและเชื่อมต่อโซลูชันของคุณใหม่


0

ฉันพบวิธีอื่นโดยไม่ต้องใช้ความพยายามมาก

เพียงคลิกขวาที่โซลูชันของคุณจากนั้นคลิกเลิกทำการเปลี่ยนแปลงที่รอดำเนินการ

ถัดไป VS จะถามไฟล์ที่มีการเปลี่ยนแปลงโดยอัตโนมัติซึ่งคุณต้องการยกเลิกหรือไม่ระบุไฟล์

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


0

คุณจะต้องทำสองขั้นตอนที่นี่เพื่อหาทางออกที่สมบูรณ์

ขั้นแรกให้คลิกที่โซลูชันที่คุณเปิดแล้วไปที่ File-> Source Control -> Go Online จากนั้นให้ยกเลิกการเลือกไฟล์ทั้งหมดที่แสดงว่ากำลังถูกแก้ไขขณะที่คุณออฟไลน์

อย่ารับรุ่นล่าสุดจาก Source Control Explorer ซึ่งจะส่งผลให้กล่องโต้ตอบอาจแสดงกลุ่มของไฟล์ที่ขอให้คุณแก้ไขข้อขัดแย้ง ทำเช่นนี้แทน

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

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