git - गिट संस्करण का उपयोग कर फ़ाइल का परिवर्तन इतिहास देखें



10 Answers

आप उपयोग कर सकते हैं

git log -p filename

गिट को प्रत्येक लॉग एंट्री के लिए पैच जेनरेट करने दें।

देख

git help log

अधिक विकल्पों के लिए - यह वास्तव में बहुत अच्छी चीजें कर सकता है :) केवल एक विशिष्ट प्रतिबद्धता के लिए भिन्नता प्राप्त करने के लिए आप कर सकते हैं

git show HEAD 

या पहचानकर्ता द्वारा कोई अन्य संशोधन। या प्रयोग करें

gitk

परिवर्तनों को दृष्टि से ब्राउज़ करने के लिए।

git git-log

मैं गिट में एक व्यक्तिगत फ़ाइल के परिवर्तन इतिहास को कैसे देख सकता हूं, क्या बदल गया है इसके साथ पूरा विवरण?

मुझे अब तक मिल गया है:

git log -- [filename]

जो मुझे फ़ाइल का प्रतिबद्ध इतिहास दिखाता है, लेकिन मैं प्रत्येक फ़ाइल परिवर्तन की सामग्री पर कैसे प्राप्त करूं?

मैं एमएस सोर्ससेफ से संक्रमण करने की कोशिश कर रहा हूं और यह एक साधारण right-clickshow history




यदि आप पाठ-आधारित रहना पसंद करते हैं, तो आप tig का उपयोग करना चाह सकते हैं।

शीघ्र इंस्टॉल करना:

  • apt-get : # apt-get install tig
  • होमब्रू (ओएस एक्स) : $ brew install tig

एक फ़ाइल पर इतिहास देखने के लिए इसका इस्तेमाल करें: tig [filename]
या विस्तृत रेपो इतिहास ब्राउज़ करें: tig

gitk समान लेकिन पाठ आधारित। टर्मिनल में रंग का समर्थन करता है!




SourceTree उपयोगकर्ता

यदि आप अपने भंडार को देखने के लिए SourceTree का उपयोग करते हैं (यह मुफ़्त है और काफी अच्छा है) तो आप एक फ़ाइल पर राइट क्लिक कर सकते हैं और लॉग का चयन कर सकते हैं

प्रदर्शन (नीचे) गिटक से अधिक मित्रवत है और सूचीबद्ध अन्य विकल्प। दुर्भाग्यवश (इस समय) कमांड लाइन से इस दृश्य को लॉन्च करने का कोई आसान तरीका नहीं है - स्रोत ट्री का सीएलआई वर्तमान में केवल रिपोज़ खोलता है।




उनके माध्यम से पढ़ने और थोड़ा सा खेलने के बाद अन्य उत्तरों का सारांश:

सामान्य कमांड लाइन कमांड होगा

git log --follow --all -p dir/file.c

लेकिन आप इसे देखने के अधिक मानव-पठनीय तरीके देने के लिए या तो गिटक (गुई) या टिग (टेक्स्ट-यूई) का भी उपयोग कर सकते हैं।

gitk --follow --all -p dir/file.c

tig --follow --all -p dir/file.c

डेबियन / उबंटू के तहत, इन सुंदर उपकरणों के लिए इंस्टॉल कमांड अपेक्षित है:

sudo apt-get install gitk tig

और मैं वर्तमान में उपयोग कर रहा हूँ:

alias gdf='gitk --follow --all -p'

ताकि मैं उपनिर्देशिका dir में सब कुछ का एक केंद्रित इतिहास प्राप्त करने के लिए gdf dir टाइप कर gdf dir




हाल ही में मैंने tig खोज की और इसे बहुत उपयोगी पाया। कुछ ऐसे मामले हैं जो मैं चाहता हूं कि यह ए या बी करता है लेकिन अधिकांश समय यह साफ है।

आपके मामले के लिए, tig <filename> हो सकता है कि आप जो खोज रहे हैं।

http://jonas.nitro.dk/tig/




या:

gitx -- <path/to/filename>

यदि आप gitx का उपयोग कर रहे हैं




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




जिस उत्तर को मैं ढूंढ रहा था वह इस धागे में नहीं था उन फ़ाइलों में बदलाव देखना जो मैं प्रतिबद्धता के लिए आयोजित किया था। अर्थात

git diff --cached



यदि आप TortoiseGit का उपयोग करते हैं तो आपको फ़ाइल पर राइट क्लिक करने में सक्षम होना चाहिए और TortoiseGit --> Show Log । पॉप अप करने वाली विंडो में, सुनिश्चित करें कि:

  • ' Show Whole Project ' विकल्प की जांच नहीं की गई है।

  • ' All Branches ' विकल्प की जांच की गई है।




git diff -U <filename> आपको एक एकीकृत diff देता है।

यह लाल और हरे रंग पर रंगीन होना चाहिए। यदि यह नहीं है, तो चलाएं: git config color.ui auto पहले।




Related


Tags

git   git-log