एक संशोधन के git लॉग


181

मेरे पास एक कमिट सी है। मैं उस सटीक कमिट c + मेटैनफॉर्मेशन का परिवर्तन प्राप्त करना चाहता हूं और कोई दूसरा नहीं। क्या ऐसा करने की तुलना में कोई सरल तरीका git log -p c^..cहै?

जवाबों:



60

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

git log -1 -U c

यह आपको प्रतिबद्ध लॉग देगा, और फिर आपके स्वचालन उद्देश्यों के लिए सभी गिट लॉगिंग विकल्पों पर आपका पूर्ण नियंत्रण होगा। आपके उदाहरण में आपने कहा था कि आप परिवर्तन-सेट चाहते हैं। इसे पूरा करने का सबसे मानवीय तरीका है:

git log --name-status --diff-filter="[A|C|D|M|R|T]" -1 -U c

या, यदि आप 1.8 से अधिक git संस्करण का उपयोग कर रहे हैं, तो यह होगा:

git log --name-status --diff-filter="ACDMRT" -1 -U c

यह आपको इसके समान परिणाम देगा:

commit {c}
Author: zedoo <zedoo@stackoverflow.com>
Date: Thu Aug 2 {time-stamp}

   {short description}
D    zedoo/foo.py
A    zedoo/bar.py

बेशक आप जो भी घटनाओं को फिट देखते हैं, उन्हें फ़िल्टर कर सकते हैं, और वापसी को स्वरूपित कर सकते हैं जैसा कि आप पारंपरिक गिट-लॉग कमांड के माध्यम से चाहते हैं जो यहां अच्छी तरह से प्रलेखित हैं


14
यदि आप अंतर नहीं चाहते हैं, तो करें git show --name-only <sha1>!
dbn

16
यदि आप केवल अंतर नहीं चाहते हैं, तो उपयोग करें git show -s <commit>
मोफ्फू जूल

3
क्या करता -1है? यह कहाँ प्रलेखित है?
एलेक्स

1
@alex git help log"कमिट लिमिट " सेक्शन के तहत आउटपुट देखें । या देखें git-scm.com/book/en/v2/… -<number> आउटपुट के लिए आवागमन की संख्या को सीमित करता है।
लार्स

14

git log -p c -1 बस यही करता है।


4
-1 क्या करता है? यह कहाँ प्रलेखित है?
एलेक्स

4
@alex: "-1" दी गई संख्या के लिए प्रदर्शित प्रविष्टियों की संख्या सीमित करता है, इसके लिए कम हाथ है -n 1या --max-number=1और है यहाँ प्रलेखित
डेरपसौरस

0

आप कमिट के विवरण द्वारा परिवर्तन को फ़िल्टर करने के लिए उपयोग कर सकते हैं:

git log --grep='part_of_description' -p

उन git log --grep='part_of_description'कमिटों का चयन करें, जिनमें 'part_of_description' शामिल है और -pप्रत्येक कमिट के बदलाव को दिखाते हैं

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