2011-02-10 16 views
33

मैंने जीआईटी का उपयोग करने की कोशिश की, हालांकि मेरे लिए सबसे बड़ी समस्या यह है कि विलय करने के लिए कोई उपकरण नहीं है। कम से कम msysgit मुझे कुछ भी नहीं देता है। मैं जीआईटी में कैसे विलय कर सकता हूं? क्या इसके लिए कोई शानदार उपकरण है या क्या मुझे WinMerge या उस तरह के एप्लिकेशन का उपयोग करना है?आप विंडोज़ पर जीआईटी में कैसे विलय करते हैं?

मैं जावा और ग्रहण का उपयोग करता हूं।

+4

स्पष्ट करने के लिए: यदि आप एक उपकरण है जो 'के लिए पूछ रहे हैं जब आप विवादों में भाग लेते हैं, तो आपको तीन-तरफा विलय करने में मदद मिलेगी, है ना? (गिट्स की मुख्य चीजों में से एक विलय होता है; यह विवादों को हल करने के लिए आपको छोड़ देता है।) – Cascabel

उत्तर

69

मैं kdiff3 का सुझाव देता हूं। कुछ इसे स्थापित करें और डाल की तरह:

[merge] 
     tool = kdiff3 
[mergetool "kdiff3"] 
     path = c:/Program Files (x86)/KDiff3/kdiff3.exe 
[diff] 
     tool = kdiff3 
     guitool = kdiff3 
[difftool "kdiff3"] 
     path = c:/Program Files (x86)/KDiff3/kdiff3.exe 

में अपने .gitconfig

वैश्विक config (.gitconfig) संपादित करने के लिए: git config --global --edit

आपकी मशीन पर स्थापना पथ c:/Program Files (x86)/KDiff3/kdiff3.exe से अलग हो सकता। उस स्ट्रिंग को अपने kdiff3 बाइनरी के वास्तविक पथ से ऊपर बदलें। और भूल नहीं है आप आगे स्लैश, /, और नहीं पिछड़े लोगों ( \ ) देशी कार्यक्रमों की तरह आम तौर पर ऐसा करने का उपयोग करने के लिए है।

+26

वैश्विक कॉन्फ़िगरेशन (.gitconfig) को संपादित करने के लिए: 'git config --global --edit' – Mike

+0

^यह होना चाहिए उत्तर में भी जोड़ा गया। :) – rgin

+4

जिस तरह से डिफ़ॉल्ट स्थापना स्थान सी हो सकता है:/प्रोग्राम फ़ाइलें/KDiff3/kdiff3.exe –

3
मेरे लिए

(Windows XP, kdiff3 0.9.96 और Git 1.7.5.1), जैन हुदेक का जवाब काम नहीं किया। यहाँ मेरी सेटअप है:

[diff] 
     tool = kdiff3 
     guitool = kdiff3 

[difftool] 
     prompt = false 

[difftool "kdiff3"] 
     path = /home/username/bin/difftool-kdiff3.sh 

और

#!/bin/sh 

# Passed the following parameters from git 
# --auto --L1 "somefile (A)" --L2 "somefile (B)" /tmp/4VhUw0_somefile somefile 

LOCAL=$6 
REMOTE=$7 

"C:/Program Files/KDiff3/kdiff3.exe" $(cygpath -w "$LOCAL") "$REMOTE" 
+1

मेरा उत्तर [मूल विंडोज गिट (MSysGit)] (http://git-scm.com/download/win) के लिए है। यदि आप देशी केडीएफ 3 के साथ सिग्विन गिट का उपयोग करते हैं, तो आपको 'साइगपाथ' का उपयोग करके इस रैपर की आवश्यकता है। लेकिन मैं MSysGit को प्राथमिकता देता हूं, भले ही मैं इसे ज्यादातर सिग्विन खोल से उपयोग करता हूं (मैंने डिस्क को/c /,/d/etc पर घुमाया है और फिर msys उपकरण अनुवाद के बिना पथ को समझते हैं; वास्तव में देशी लोग अभी भी नहीं करते हैं) । –

0

तुम वास्तव में, मर्ज करने के लिए विशेष रूप से एक और उपकरण की जरूरत नहीं है के बाद से किसी भी सभ्य Git प्रदाता की देखभाल करने में सक्षम होना चाहिए, यहां तक ​​कि अपने आप में msysgit। आपके मामले में जहां WinMerge की तरह एक जीयूआई वांछनीय है, ईजीट है, जो एक्लिप्स के लिए गिट टीम प्रदाता है, हालांकि इसका विलय समारोह कुछ हद तक अस्थिर हो सकता है क्योंकि परियोजना अभी भी अपेक्षाकृत नई है। वहाँ TortoiseGit भी है जो मैं विलय सहित विंडोज पर अधिकांश गिट ऑपरेशंस के लिए उपयोग करता हूं।

2

जब से तुम आप ग्रहण का उपयोग करने का उल्लेख है, तो आप EGit's merge tools है, जो संघर्ष को संभालने के लिए एक सुविधाजनक तरीका प्रदान करता है का उपयोग कर सकते हैं:

enter image description here

enter image description here

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