Как вы сливаетесь в GIT на Windows?

Я пытался использовать GIT, но для меня самая большая проблема с ним в том, что нет инструмента для слияния. По крайней мере, msysgit не дает мне ничего. Как я могу слиться в GIT? Есть ли отличные инструменты для этого или мне нужно использовать WinMerge или подобное приложение?

Я использую Java и Eclipse.

5 ответов

Решение

Я предлагаю 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

Чтобы отредактировать глобальный конфиг (.gitconfig): git config --global --edit

Путь установки на вашем компьютере может отличаться от c:/Program Files (x86)/KDiff3/kdiff3.exe, Замените приведенную выше строку реальным путем к вашему двоичному файлу kdiff3. И не забывайте, что вы должны использовать косые черты, / и не отсталые (\), как обычно делают нативные программы.

Для меня (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"

Поскольку вы упоминаете, что используете Eclipse, вы можете использовать инструменты слияния EGit, которые предоставляют удобный способ обработки конфликтов:

Kdiff3 - отличный инструмент для слияния, который мне нравится использовать в сочетании с git.

http://www.mainelydesign.com/blog/view/using-kdiff3-as-git-gui-merge-tool-on-windows-xp-windows-7

На самом деле вам не нужен другой инструмент специально для слияния, поскольку любой порядочный провайдер Git должен позаботиться об этом, даже сам msysgit. В вашем случае, когда желателен GUI, такой как WinMerge, есть EGit, который является поставщиком команды Git для Eclipse, хотя его функция слияния может быть несколько нестабильной, поскольку проект все еще относительно новый. Существует также TortoiseGit, который я использую для большинства операций git в Windows, включая слияние.

Другие вопросы по тегам