विजुअल स्टूडियो कोड: ऑटो-रिफ्रेश फ़ाइल में परिवर्तन


100

विज़ुअल स्टूडियो कोड के साथ कार्य करना मैंने देखा है कि यदि कोई फ़ाइल आप परिवर्तन के साथ काम कर रहे हैं, तो जब भी उस फ़ाइल को एक कोड पैनल में केंद्रित किया जाएगा तो उसे डिस्क से पुनः लोड किया जाएगा (यदि आपके पास VSCode के माध्यम से फ़ाइल में परिवर्तन नहीं है)

हालाँकि, यदि आप उस फ़ाइल पर हैं, तो आपको फ़ाइल परिवर्तनों के बारे में चेतावनी देने के लिए कोई अलर्ट नहीं है।

मैं सेटिंग्स की समीक्षा कर रहा हूं और मुझे दृश्य स्टूडियो विकल्प जैसा कुछ भी नहीं मिल रहा है:

पता लगाएं कि पर्यावरण के बाहर फ़ाइल कब बदली जाती है

इसलिए मेरा प्रश्न: क्या उस चेतावनी को करने के लिए कोई छिपी हुई सेटिंग या कुछ हैक है।

अपडेट करें

दृश्य स्टूडियो कोड के संस्करण 0.3.0 में हल किया गया।

  1. संपादक के माध्यम से कोई परिवर्तन नहीं होने पर फ़ाइल डिस्क से अपडेट की जाएगी। (एक प्रक्रिया निष्पादन के दौरान लॉग फ़ाइलों को पढ़ने के लिए बहुत उपयोगी)
  2. अगर कभी दोनों तरफ (डिस्क से और संपादक के माध्यम से) परिवर्तन होते हैं, तो जब आप VSCode का उपयोग करके फ़ाइल को सहेजने का प्रयास करते हैं, तो संपादक आपको उस स्थिति के बारे में चेतावनी देगा (यानी "गंदे लिखते हैं") और एक फ़ाइल तुलना आपको तय करने की अनुमति देगा क्या करें।

1
यदि आपके पास परिवर्तन हैं, तो आप उन्हें क्यों नहीं चाहेंगे?
जॉन पापा

12
@JohnPapa मैं वही व्यवहार प्राप्त करने की कोशिश कर रहा हूं जो मुझे दृश्य स्टूडियो या उदात्त पाठ में मिलता है। अगर मेरे पास आईडीई के माध्यम से कोई बदलाव नहीं है, तो आईडीई पर फ़ाइल को एचडीडी से नवीनतम संस्करण में अपडेट किया जाना चाहिए। अगर मेरे पास आईडीई के माध्यम से परिवर्तन है और आईडीई के बाहर भी चेतावनी है तो उस स्थिति से सावधान रहना चाहिए। कुछ ऐसा है "फ़ाइल xxx डिस्क पर बदल गई है। क्या आप इसे फिर से लोड करना चाहते हैं?"
जुआन एम। एलोसगुई

इस व्यवहार में कुछ बदलावों के लिए stackoverflow.com/questions/54995008/… और github.com/microsoft/vscode-docs/blob/vnext/release-notes/… देखें , जिसमें आप चाहें तो अधिसूचना को रोकने की क्षमता भी शामिल है।
मार्क

@ जोंपा आसान। मान लीजिए कि आप एक फाइल को संपादित कर रहे हैं यह सोचकर कि यह एक अलग फाइल थी। आप अचानक महसूस करते हैं कि और अपने परिवर्तनों को खोना चाहते हैं। या अधिक प्रासंगिक, आप एक अलग गिट शाखा की जांच करते हैं। लगभग कोई भी अन्य संपादक जैसे कि नोटपैड ++ तुरंत कहेगा "फ़ाइल डिस्क पर बदल गई है। क्या आप पुनः लोड करना चाहते हैं? Vscode इसका पता नहीं लगाएगा, और आप गलत शाखा को ओवरराइट कर सकते हैं और सहेज सकते हैं और समाप्त कर सकते हैं जो भयानक है। ' टी का मानना ​​है कि मुझे अभी भी 2020 में यह समस्या हो रही है
गोस्टेगा

जवाबों:


64

यदि आपके पास डिस्क में सहेजे नहीं गए हैं तो उस फ़ाइल में परिवर्तन होने पर VSCode फ़ाइल को कभी भी ताज़ा नहीं करेगा। हालाँकि, यदि फ़ाइल खुली है और उसमें परिवर्तन नहीं हैं, तो यह डिस्क पर परिवर्तनों के साथ बदल जाएगा, यह सच है।

वर्तमान में इस व्यवहार को अक्षम करने का कोई तरीका नहीं है।


52
अन्य संपादकों के पास यह सब है। कुछ फ़ाइलों को गलती से उपयोगकर्ता द्वारा संशोधित किया जा सकता है, लेकिन उपयोगकर्ता वास्तव में जो कुछ भी बताना चाहता है वह यह है कि फ़ाइल डिस्क पर बदल गई है और पूछा गया है कि क्या वे पुनः लोड करना चाहते हैं, कम से कम संपादक पर कुछ अधिसूचना फलक के माध्यम से।
वॉरेन पी।

4
अन्य संपादकों के पास यह हो सकता है, लेकिन यह व्यवहार VSCode को बंद करने और फिर से खोलने पर भी बना रहता है, जो बहुत खतरनाक है यदि आप ऐसा होने की उम्मीद नहीं करते हैं। आपके पास 10 फाइलें हो सकती हैं, VS2017 पर वापस जाएं और फिर 2 दिन बाद VSCode पर वापस आएं और 'सभी को बचाएं' .....
Simon_Weaver

6
@Ingemar मैं वास्तव में VSCode को एक शॉट देना चाहता था (कम से कम कोणीय intellisense के लिए) और शायद VS2017 और VSCode के बीच स्विच करना। मैं अक्सर VSCode में बदलाव करता हूं, लेकिन इसे सहेजता नहीं हूं, फिर उसी फाइल को VS2017 में बदल देता हूं। मैं VSCode पर वापस जाऊँगा और गलती से फ़ाइल को अपने परिवर्तन (बंद / फिर से खोलने के बाद भी) में बदल दूंगा। कुछ ही दिनों में मेरा बदला हुआ कम से कम दो बार गायब हो गया और एक बार आखिरकार मुझे पता चला कि यह मेरे लिए VSCode का अंत क्यों था। बहुत कम से कम VSCode को चेतावनी देनी चाहिए जब आप एक फ़ाइल को सहेज रहे हैं जो बाहरी रूप से संशोधित की गई थी क्योंकि इसे VSCode में खोला गया था।
सिमोन_विवर

4
यह उत्तर अब 3 साल का है, क्या किसी ने इस बारे में कोई मुद्दा खोला है? क्या आप कृपया यहाँ लिंक पोस्ट कर सकते हैं?
फैबियो का कहना है कि

19
File: Revert Fileडिस्क से ताजा सामग्री प्राप्त करने के लिए इस्तेमाल किया जा सकता है।
बेंजामिन पसेरो

27
{
    "files.useExperimentalFileWatcher" : true
}

कोड में -> वरीयताएँ -> सेटिंग्स

मैक पर विजुअल स्टूडियो कोड संस्करण 1.26.1 के साथ परीक्षण किया गया और जीता


3
यह मेरे लिए काम नहीं करता है (विंडोज 10 पर VSCode 1.26.1): जब किसी फाइल को बाहरी रूप से संशोधित किया जाता है, अगर कोड में कोई बदलाव नहीं होता है तो उसे चुपचाप फिर से लोड किया जाता है, अन्यथा यह कुछ भी नहीं करेगा और फिर जब मैं बचाने की कोशिश करूंगा यह मुझे संघर्ष के बारे में चेतावनी देगा, 2 संस्करणों की तुलना करके इसे हल करने की पेशकश करेगा। यह सब होने के बावजूद होता है files.useExperimentalFileWatcher, जैसा कि मैंने सच और झूठ दोनों की कोशिश की है, और मैंने कोई अंतर नहीं देखा है।
फैबियो का कहना है कि

5
संस्करण 1.28.2 (1.28.2) Code -> Preferences -> Settingsऔर "द्रष्टा" के लिए खोजें बॉक्स को चेक करें। मेरे लिये कार्य करता है।
शनीमल

2
लानत है, कि CPU को लिनक्स पर पागलों की तरह खाता है।
२१

9
@WonJunBae यह क्या करता है? कृपया इस सुविधा के लिए एक विवरण दें जिसकी आप अनुशंसा कर रहे हैं।
1.21 गीगावाट

4
VSCode 1.41.1 पर अज्ञात विन्यास सेटिंग
जोश

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.