Мені вдалося отримати git, щоб запустити програму Beyond Compare 3 як інструмент diff, однак, коли я роблю diff, файл, з яким я порівнюю, не завантажується. Завантажується лише остання версія файлу, і нічого іншого, тому на правій панелі "Більше порівняння" немає нічого.
У мене працює git 1.6.3.1 з Cygwin з Beyond Compare 3. Я встановив поза порівнянням, як вони пропонують у частині підтримки свого веб-сайту із таким сценарієм:
#!/bin/sh
# diff is called by git with 7 parameters:
# path old-file old-hex old-mode new-file new-hex new-mode
"path_to_bc3_executable" "$2" "$5" | cat
Хто-небудь ще стикався з цією проблемою і знає рішення цієї проблеми?
Редагувати:
Я дотримувався пропозицій VonC, але у мене все ще є та сама проблема, що і раніше. Я якось новачок у Git, тому, можливо, я неправильно використовую diff.
Наприклад, я намагаюся побачити diff у файлі з такою командою:
git diff main.css
Поза межами Порівняння відкриється і відображатиметься лише мій поточний main.css на лівій панелі, у правій області нічого немає. Мені б хотілося побачити мій поточний main.css на лівій панелі порівняно з HEAD, в основному те, що я востаннє здійснив.
Мій git-diff-wrapper.sh виглядає так:
#!/bin/sh
# diff is called by git with 7 parameters:
# path old-file old-hex old-mode new-file new-hex new-mode
"c:/Program Files/Beyond Compare 3/BCompare.exe" "$2" "$5" | cat
Мій конфігурація git виглядає так для Diff:
[diff]
external = c:/cygwin/bin/git-diff-wrapper.sh
/c/program files
замістьc:/program files
. Також я зняв"$(cygpath -w $LOCAL)"
і тільки що використав"$LOCAL"
. Це, здавалося, трюк.