Hello,
Which set of instructions did you follow in that link: Git 1.8+ or Git 1.7.x? With newer versions of git, you do not need to define 'bcompare' as part of the configuration and would not manually edit the .gitconfig file or have a reference to 'bcompare'. Instead, you run these 2 commands:
$ git config --global diff.tool bc3
$ git config --global difftool.bc3 trustExitCode true
(http://www.scootersoftware.com/suppo...b_vcs#gitlinux)
The "script stored as ~/bin/compare" you mention. Are you referring to "bcomp" or another script you've customized?
Announcement
Collapse
No announcement yet.
a Git integration problem.
Collapse
X
-
No solution?
I'm also having this problem after upgrading my linux mint from 13 to 17 (not cygwin). I'm using BC3 which is launched from a script stored as ~/bin/bcompare and I've followed the instructions to set up bc3 for git from here:
http://www.scootersoftware.com/support.php?zz=kb_vcs
i'm using:
Linux minto 3.13.0-37-generic #64-Ubuntu athlon i686 GNU/Linux
git version 1.9.1
bcompare 3.3.13 (build 18981)
I can run bcompare from a shell and bc3 opens. but when i run git difftool the left window is, as the OP states, not displayed. instead a 'file not found' error is displayed instead. any advice to track the cause of this down?
Leave a comment:
-
Sorry we didn't respond to this earlier.
On Windows you need to use "bcomp" instead of "bcompare" in your wrapper script. bcomp is a small launcher that waits for the comparison to complete before it exits. bcompare is the main program executable, and if another copy is running it will communicate with that copy and then exit immediately.
Leave a comment:
-
Sorry for my Pool english...
I use Cygwin and Cygwin's Git, and I use Linux and Linux Git Too.
>> Does it work with the first tab, but won't work if you open multiple tabs at once?
as exist a bc3 git diff process, the second process (is irrelevant with use TAB or not) is
not worked.
e.g.
GIT_EXTERNAL_DIFF=~/bin/git/git-diff-wrapper git diff -- project/file1 ,
it Worked. not close this bc3 window, run below command:
GIT_EXTERNAL_DIFF=~/bin/git/git-diff-wrapper git diff -- project/file2
it not Worked.
>> Each will have a different set of instructions to setup.
It is not relevant with gitconfig. only use git-diff-wrapper script.Last edited by zw963; 20-Jun-2013, 01:36 PM.
Leave a comment:
-
Hello,
Sorry, I had difficulty parsing the issue you are currently having. Earlier you mentioned that switching to BCCustom worked, but now it is having trouble.
Does it work with the first tab, but won't work if you open multiple tabs at once?
Are you still using Cygwin? Or are you using Git for Linux on a native Linux OS? Or Git for Windows on a Windows OS? Each will have a different set of instructions to setup.
Leave a comment:
-
Hello!
I can not found the difference between Cygwin and Linux.
Here, we not talk about Cygwin, But my #4 problem is still exist.
What I means is:
When bc3 text compare windows have exist, If I open a tab with either
following command form:
GIT_EXTERNAL_DIFF=~/bin/git/git-diff-wrapper git diffgit difftool
it have a tips:
red ×, File Not Found(/tmp/????.???)
It very not convenient, when I hope have more than one git diff the same times.Last edited by zw963; 30-May-2013, 01:53 PM.
Leave a comment:
-
Hello,
The Git For Linux section covers the Linux version of BC3 running with a Linux install of Git. Cygwin could/does introduce a difference in the directions needed. We wouldn't change the Linux section, but we might add a section for Cygwin.
Leave a comment:
-
Hi, I think it seem like should update
http://www.scootersoftware.com/suppo...b_vcs#gitlinux help information.
I change it to below, fix some error. for reference only
Git for Linux
For Git 1.7.8 and newer, edit the global config file to set:
Diff
Create a shell script file "git-diff-wrapper.sh" with the following content:
#!/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
In a console window enter the command:
$ git config --global diff.tool bcCustom
$ git config --global difftool.trustExitCode true
$ git config --global difftool.bcCustom.cmd '<path_to_wrapper_script> $LOCAL $REMOTE'
Merge v3 Pro
Add the Beyond Compare 3 directory to the Windows PATH variable. Then:
$ git config --global merge.tool bcCustom
$ git config --global mergetool.trustExitCode true
$ git config --global mergetool.bcCustom.cmd '<path_to_wrapper_script> $LOCAL $REMOTE $BASE $MERGED'
because the following section is invaild.
[mergetool "bcCustom"]
cmd = bc3 $LOCAL $REMOTE $BASE $MERGED
trustExitCode = true
prompt = false
[mergetool]
prompt = false
trustExitCode = trueLast edited by zw963; 30-May-2013, 07:52 AM.
Leave a comment:
-
Hi, I have understood your's example..
Actually, before now, I want to modified.gitconfig to worked with my git mergetool,
it seem like have some problem, It always point to Bcompare, But, this files in
64 bit linux , is not worked, it need some wrapper.
I just now change to bcCustom, make it point to my bc3 wrapper. (it use same name in linux and cygwin, it all worked Ok!! very Thanks.
Another question.
git config --global diff.tool bc3
[diff]
tool = bc3
Because this, I use previous environment variable to realize this propose.
when git diff, it use diff.
when GIT_EXTERNAL_DIFF=~/bin/git/git-diff-wrapper git diff, it use bc3.
How can I realize this according .gitconfig config ?Last edited by zw963; 30-May-2013, 02:41 AM.
Leave a comment:
-
I will try, Thanks.
But my problem is seem like irrelevant to gitconfig.
I just use a script, it named: git-diff-wrapper, I set it to environment
variable $GIT_EXTERNAL_DIFF. my script context in below:
#!/bin/sh
# diff is called by git with 7 parameters:
# path old-file old-hex old-mode new-file new-hex new-mode
opendiff "$2" "$5" | cat
in linux, bc3 candidate is very behind, when use git mergetool, it autoguess always some vimdiff tools for me, and I don't want to modified .gitconfig for this propose. it seem work OK. ; ).
anyhow, When I invoke a git diff commnad, (not git difftool command) like below:
GIT_EXTERNAL_DIFF=~/bin/git/git-diff-wrapper git diff --ignore-submodules "$@"
my .gitconfig relative to diff or merge tool config in below:
[difftool]
prompt = false
[mergetool]
prompt = false
trustExitCode = true
keepbackup = falseLast edited by zw963; 30-May-2013, 01:21 AM.
Leave a comment:
-
Here is an example (Windows)
[difftool "bcCustom"]
cmd = \"C:/Program Files (x86)/Beyond Compare 3/bcomp.exe\" "$(cygpath -w $LOCAL)" "$REMOTE"
[diff]
tool = bcCustom
[difftool]
prompt = false
[merge]
tool = bcCustom
[mergetool]
prompt = false
[mergetool "bcCustom"]
#trustExitCode = true
cmd = \"c:/program files (x86)/beyond compare 3/bcomp.exe\" "$LOCAL" "$REMOTE" "$BASE" "$MERGED"
Leave a comment:
-
Hello,
For Cygwin's configuration, something we have recently seen is that you must give the difftool shortcut a different name. You cannot use "bc3". This is due to Git adding support for bc3 internally, expecting to be on either Windows or Linux, and handling additional features automatically if "bc3" is used.
Leave a comment:
-
a Git integration problem.
When one arbitrary BC3 Beyond Text Compare Window has opened.
When I use git external to compare, example:
GIT_EXTERNAL_DIFF=~/bin/git/git-diff-wrapper git diff --ignore-submodules -- Com100xf.Tests/Controllers/WebLinkControllerTest.cs
It seem like, tmp directory(git generated temprary file) is not exist, so left panel complain file is not exist.
But if not exist bc3 process when use git, it always work OK. (it seem generated three tmp files in tmp directory, included a file named: qBZEKD_WebLinkControllerTest.cs, this files is not be generaed when previous situation.
my git-diff-wrapper script:
Bcompare "$2" "$5" | cat
above situation is appear in linux version 3.37 and cygwin.Tags: None
Leave a comment: