2010-08-26 7 views
22

नियमित hg log कमांड प्रति परिवर्तन कम से कम 4 लाइनों के साथ आउटपुट देता है। उदाहरणएक-लाइनर के साथ Mercurial लॉग

changeset: 238:03a214f2a1cf 
user:  My Name <[email protected]> 
date:  Thu Aug 26 09:49:32 2010 +0200 
summary:  Added tag v1.1 for changeset f22fd3974361 

के लिए मैं याद करने के लिए एक कमांड एक अधिक कॉम्पैक्ट तरीका क्या सिर्फ changeset प्रति एक लाइन थी में एक लॉग मुद्रित करने के लिए था कि मतलब है। एक प्रारूप जिसे आप मूल रूप से changelog.txt फ़ाइल में चिपक सकते हैं और यह अच्छा लगेगा।

क्या यह अस्तित्व में है? या क्या मैं इसे गिट या कुछ और के साथ देखा है?

+1

चेंजलॉग शैली के लिए, 'लॉग - स्टाइल चेंजलॉग' का प्रयास करें :) – tonfa

+0

इसे आज़माएं: एचजी लॉग-टी "\ t {date | shortdate} \ t [{rev}] \ t {लेखक | उपयोगकर्ता} \ t {desc} \ n " –

उत्तर

24
hg log --style compact 

तुम भी विभिन्न स्वरूपों

hg help templates 

आपके मामले में में लॉग आउट यदि आप केवल नोड आईडी प्रदर्शित करने के लिए इस

hg log --template "{node}\n" 
42

आप कर सकते हैं की तरह कुछ करना चाहते हैं प्रदर्शित करने के लिए टेम्पलेट का उपयोग कर सकते हैं का उपयोग - टेम्पलेट विकल्प के साथ करें, उदाहरण के लिए:

hg log --template '{node|short} | {date|isodatesec} | {author|user}: {desc|strip|firstline}\n' 

यह (जीएनयू Emacs ट्रंक मैं एक एचजी भंडार करने के लिए स्थानीय स्तर पर परिवर्तित से उदाहरण) कुछ इस तरह दिखाई देना चाहिए:

$ hg log --limit 5 --template '{node|short} | {date|isodatesec} | {author|user}: {desc|strip|firstline}\n' 
36ab2e3f8ebd | 2010-09-08 16:54:00 +0200 | agustin: textmodes/ispell.el (ispell-valid-dictionary-list): Simplify logic. 
9f3ac6d4a645 | 2010-09-08 16:42:54 +0200 | michael: Migrate to Tramp 2.2. Rearrange load dependencies. 
8c696d2a7695 | 2010-09-07 20:01:23 +0200 | agustin: Make sure original ispell arg list is initialized in (ispell-start-process). 
b5f110747072 | 2010-09-07 06:23:16 +0000 | yamaoka: gnus-html.el (gnus-html-wash-tags, gnus-html-put-image): Mark cid and internal images as deletable by `W D D'. 
b53cfb7d099e | 2010-09-07 01:20:19 +0000 | yamaoka: gnus-async.el (gnus-html-prefetch-images): Autoload it when compiling; (gnus-async-article-callback): Fix typo. 
$ 

एक बार जब आप changesets की एक पंक्ति का सारांश के लिए एक अच्छी टेम्पलेट है, आप कर सकते हैं उर्फ अब आप टाइप कर सकते हैं hg shortlog, hg short या यहाँ तक किइंस्टॉल होने के बाद

[alias] 
shortlog = log --template '{node|short} | {date|isodatesec} | {author|user}: {desc|strip|firstline}\n' 

: एक कमांड इस तरह से अपनी ~/.hgrc फ़ाइल में उर्फ ​​ जोड़ने(hg showconfig के बजाय hg shortlog की विशिष्ट पहचान करने के लिए) और सभी सामान्य 'लॉग' कमांड-विकल्प।

$ hg short -r 100:103 
db9f8efcf689 | 1990-09-14 19:07:14 +0000 | jimb: *** empty log message *** 
5874bf15e07d | 1990-09-19 18:22:41 +0000 | gnulists: Initial revision 
797d304414fd | 1990-09-27 21:17:59 +0000 | mtr: Initial revision 
b2656b7830e4 | 1990-10-09 02:52:33 +0000 | rms: *** empty log message *** 
$ 

या यहां तक ​​कि चीजें हैं जो (तेज चालक दल के भंडार से ही उदाहरण) टैग नाम का उपयोग करें::

[email protected]:/hg/mercurial/crew$ hg short -r 1.4 -r 1.5 -r 1.6 
31ec469f9b55 | 2009-11-16 21:25:36 +0100 | mg: i18n-ja: fixed bad indentation 
ff2704a8ded3 | 2010-03-05 17:24:52 -0600 | mpm: mq: drop -Q in favor of --mq only 
f786fc4b8764 | 2010-06-29 12:12:34 +0200 | mads: log: follow filenames through renames (issue647) 
[email protected]:/hg/mercurial/crew$ 
+0

अधिक जानकारी के लिए, [यह मार्गदर्शिका] देखें (http://hgbook.red-bean.com/read/customizing-the-output-of-mercurial.html), और वहां भी' एचजी मदद टेम्पलेट्स '। – congusbongus

+0

पहले उल्लिखित कमांड में, विंडोज़ में 'साथ "को प्रतिस्थापित करें। – Peteter

2

एक पंक्ति भले ही पर विवरण प्राप्त करने के लिए उदाहरण के लिए यह अब टाइप करने के लिए संभव हो जाना चाहिए

{join(splitlines(desc), ' ')} 

यहाँ एक उदाहरण मैं सीएसवी के रूप में डेटा निकालने के उपयोग कर रहा हूँ है: मूल टिप्पणी एकाधिक लाइन की तरह नीचे एक splitlines गठबंधन और समारोह में शामिल होने के शामिल

012,
hg log --template "{node};{date|shortdate};{branch};{author};{join(splitlines(desc), ' ')};{diffstat};files: {join(files, ', ')}\n"