full - integrate git bash with visual studio code




गिट में फ़ाइल के इतिहास के माध्यम से कदम; P4v टाइमलैप्स के समान (6)

मैं फ़ाइल के इतिहास की जांच करते समय मदद के लिए एक उपकरण की मांग कर रहा हूं। विशेष रूप से, मैं फ़ाइल की संपूर्ण सामग्री को देखना चाहता हूं, लेकिन समय के साथ पीछे की ओर कदम बढ़ा सकता हूं। सजावट के लिए अतिरिक्त खुशी पिछले रिवाइव या कुछ अन्य निर्दिष्ट रेव से अंतर को दर्शाती है।

वर्तमान में मैं git blame उपयोग करता हूं, और यह देख सकता हूं कि प्रत्येक वर्तमान लाइन में क्या परिवर्तन हुए। फिर मुझे उस फ़ाइल के लिए किसी विशेष कमिट के साथ एक दर्शक को फिर से जारी करना होगा। यह श्रम गहन है, और यदि कोई उपकरण पहले से ही इसे स्वचालित करता है तो मैं इसका उपयोग करना पसंद करूंगा!

Perforce का टाइमलैप्स दृश्य आज तक का सबसे अच्छा उपकरण है जिसे मैंने इस कार्य के लिए देखा है।


मेरे पास एक पर्ल स्क्रिप्ट है (इस प्रश्न के उत्तर के रूप में पोस्ट करने के लिए बहुत बड़ी और बहुत सामान्य) जो गिट में एक निर्दिष्ट फ़ाइल के प्रत्येक संशोधन की एक प्रति पकड़ती है। (यह आरसीएस और सीवीएस के साथ भी काम करता है)।

संपादित करें: मैं अंत में इसे Github पर जारी करने के लिए चारों ओर मिल गया है।

इसका मूल यह है (छद्म कोड):

  • रन git log --date=raw -- filename
  • commit और Date: लाइनों के लिए आउटपुट खोजें।
  • प्रत्येक कमिट-आईडी के लिए:
    • रन git show commit-id ./filename > target-filename

लक्ष्य-फ़ाइल नाम का निर्माण कमेटी-आईडी, टाइमस्टैम्प और / या अनुक्रमिक सूचकांक के कुछ संयोजन से किया गया है।

परिणाम हो सकता है, उदाहरण के लिए, फ़ाइलों का एक गुच्छा:

foo__001.txt
foo__002.txt
foo__003.txt

जहां प्रत्येक git रिपॉजिटरी से foo.txt का एक संस्करण है। मैं तब प्रत्येक फ़ाइल को देख सकता हूं और / या इसके लगातार संस्करणों को अलग कर सकता हूं।

यह आपको वह सब कुछ नहीं देता जो आप माँग रहे हैं, लेकिन यह एक अच्छी शुरुआत होनी चाहिए।


यदि आप Visual Studio का उपयोग कर रहे हैं, तो CodeLineage अच्छा है।

https://visualstudiogallery.msdn.microsoft.com/bb3d22aa-29bf-41e1-acc9-92482bee4646

मुझे यह पसंद है कि जोनाथन Aquino द्वारा Git Time-Lapse आपको प्रतिबद्ध टिप्पणी दिखाता है, लेकिन CodeLineage अच्छा है क्योंकि यह Visual Studio में एकीकृत है और आप अपने द्वारा किए गए दो संशोधनों का चयन कर सकते हैं, बजाय इसके पिछले संशोधन के प्रत्येक संशोधन की तुलना करने के बजाय।


यदि आप विम का उपयोग कर रहे हैं, तो git-time-lapse प्लगइन भी आपकी मदद कर सकता है।

यह आपको एक फ़ाइल के लिए इतिहास के माध्यम से नेविगेट करने की अनुमति देता है, प्रत्येक कमिट विस्मिफ़ के रूप में प्रस्तुत करता है, जिसमें नीचे एक अलग विस्फ़ोटक में प्रतिबद्ध संदेश होता है।



Tig , गिट के लिए एक टेक्स्ट मोड इंटरफेस, एक दोषपूर्ण दृश्य प्रस्तुत करता है जो इस कार्यक्षमता को प्रदान करता है:

  • किसी दिए गए लाइन ( बी कुंजी) के समय के लिए पीछे की ओर कदम रखें।
  • किसी दी गई पंक्ति ( , कुंजी) के मूल वचन के लिए पीछे की ओर कदम रखें।
  • समय के लिए आगे की ओर लौटते हुए आप पहले ( < की) थे।

यह पैरेंट कमेटी के लिए कदम रखते समय देखने के स्थान को संरक्षित नहीं करता है (ऐसा लगता है कि लाइन के कमिट का उपयोग करते समय)।


gitk -- filename को वही करना चाहिए जो आप चाहते हैं, यदि आप बीच में संदर्भ की पंक्तियों को किक करते हैं, और संशोधन के माध्यम से ऊपर और नीचे स्क्रॉल करते हैं।





git