2011-01-24 11 views
5

Mercurial में एक दिलचस्प विशेषता एक विम विभाजन में किए गए परिवर्तनों को देखने की क्षमता है (DiffsInCommitMessageInVIM देखें)।एचजी के रूप में एचजी के रूप में hig करता है के रूप में मैं vim में परिवर्तन प्रदर्शित करने के लिए गिट कैसे प्राप्त करूं?

गिट के साथ ऐसा करने के तरीके पर कोई संकेत?

+0

ध्यान दें कि 'core.editor' न केवल प्रतिबद्धता के लिए उपयोग किया जाता है, बल्कि टैग के लिए भी, जोड़ (इंटरैक्टिव), और प्रतिबद्धता। –

उत्तर

8

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

प्लगइन में है कि आदेश की परिभाषा के बगल में एक टिप्पणी:

स्वचालित रूप से diffing साथ किया जा सकता:

autocmd FileType gitcommit DiffGitCached | wincmd p

filetype plugins/vimXX में जमा हो जाती/ftplugin/git * .vim, उदाहरण के लिए /usr/share/vim/vim70/ftplugin/gitcommit.vim, यदि आप एक नज़र रखने के लिए उत्सुक हैं!

+0

'diff commit' करना और vim' करना: ft = gitdiff' सेट करें, फिर 'डिफगिट कैश्ड', मेरे पास विंडो खोलना है, लेकिन इसमें कोई जानकारी नहीं है। –

+0

@Alexis: आपको फ़ाइल टाइप सेट नहीं करना चाहिए। गिट को इसका पता लगाना चाहिए और प्लगइन को स्वचालित रूप से सक्षम करना चाहिए, जब तक आपके पास अपने vimrc में 'filetype प्लगइन' है। और, आपको वास्तव में यह जानने की ज़रूरत नहीं है, लेकिन गिट प्रतिबद्ध संदेशों के लिए फ़ाइल प्रकार 'gitcommit' है, न कि' gitdiff'। – Cascabel

+0

फ़ाइल प्रकार निर्दिष्ट किए बिना भी (और मैं देख सकता हूं कि हाइलाइटिंग के संबंध में फ़ाइलटाइप vim द्वारा पता चला है), 'DiffGitCached' काम नहीं करता है। अजीब। –

2

मैं Git का समर्थन करने के HGEDITOR.SH स्क्रिप्ट संशोधित कर लिया है, तो आप इसे यहाँ क्लोन कर सकते हैं:

git clone git://github.com/dharrigan/giteditor.git 

का आनंद लें!

+0

हे डेविड! :) बस मैं क्या देख रहा था! (Alessandro) –

1

मैं गिट के साथ काम करने के लिए tpopes की vim-fugitive प्लगइन की अत्यधिक अनुशंसा करता हूं।

आप इसे here

0

मैं www.vim.org से Pierre Habouzit's git.vim का उपयोग पा सकते हैं। इसे ~/.vim/ftplugin में छोड़ दें और आपको सभी सेट होना चाहिए (अपने ~/.vimrc में सामान्य filetype plugin indent on मानना)।

0

यदि आप गिट 2.9 और ऊपर का उपयोग कर रहे हैं, तो आप git config --global commit.verbose true चलाकर यह व्यवहार प्राप्त कर सकते हैं।

स्रोत: this answer

संबंधित मुद्दे