相关疑难解决方法(0)

git mergetool失败了

合并后,我想使用git mergetool来解决问题,但它失败了我指定的任何工具:

git mergetool                                                                                                          
 merge tool candidates: opendiff kdiff3 tkdiff xxdiff meld tortoisemerge gvimdiff diffuse ecmerge p4merge araxis bc3 vimdiff emerge
Merging:
main.c

Normal merge conflict for 'main.c':
  {local}: modified file
  {remote}: modified file
Hit return to start merge resolution tool (kdiff3):
merge of main.c failed

我指定的工具似乎根本没有启动.

输出

git config --list


merge.tool=kdiff3
core.repositoryformatversion=0
core.filemode=true
core.bare=false
core.logallrefupdates=true

git mergetool git-merge

6
推荐指数
1
解决办法
8481
查看次数

如何在git中合并和更新文件时解决冲突?

我觉得我接近这一切都错了.

我作为团队的一部分工作,我们使用git.现在,当我从我的团队中提取更新时,显然会不时发生冲突 - git似乎在文件中插入了大量文本,这是不好的.

无论如何,有没有一个体面的方法来管理这些冲突(我在Windows上).

我使用winmerge,但从我所看到的,它只能比较2个目录.它使解决冲突变得轻而易举,但要求我在2个不同的位置拥有2个源的状态.

有没有人知道更好的方法来做这个或如何整合这两个?

git version-control

5
推荐指数
1
解决办法
1600
查看次数

自动删除冲突标记

从源代码中删除冲突标记的快速方法是什么?

我刚刚合并了一些更改,现在我有很多文件存在冲突.

我开始手动删除它们.但是,这需要花费太多时间.

有没有办法git可以自动化这个?

我只想保留所有HEAD并丢弃所有其余的.

<<<<<<< HEAD
.
.
.
.
=======
.
.
.
.
>>>>>>> ffa5c899d36e779c23cff8b33f48f2ab95ef08c8
Run Code Online (Sandbox Code Playgroud)

git

3
推荐指数
1
解决办法
1804
查看次数

在Windows 7上使用外部程序时,git diff tmp文件在Windows上无效

我正在关注Git配置页面中的文档并尝试将其应用到我的Windows 7环境中.当我运行说"git diff file0"时,我在P4Merge中收到错误:

Errors: '/tmp/cH9ccM_file0' is (or points to) an invalid file.
Run Code Online (Sandbox Code Playgroud)

这是一个真实的陈述.我没有名为"/ tmp"的目录.我已经检查了C:\ tmp,C:\ cygwin\tmp和%PROGRAMFILES%\ Git\tmp.

有关如何将此目录更改为我所拥有的内容的任何想法?

编辑:

附加信息.最终,我正在尝试让WinMerge(或任何外部程序)工作.我之前选择使用P4Merge,因为我无法让WinMerge工作,所以我决定使用上述文章中使用的程序.

以下是我的.gitconfig的相关部分:

[merge]
tool = extMerge
[mergetool "extMerge"]
cmd = extMerge \"$BASE\" \"$LOCAL\" \"$REMOTE\" \"$MERGED\"
trustExitCode = false
[diff]
external = extDiff
Run Code Online (Sandbox Code Playgroud)

extDiff脚本:

#!/usr/bin/sh
# extDiff
# Wrapper for using an external diff tool in Git
echo "File 1: $2"
echo "File 2: $5"
/usr/local/bin/extMerge "$2" "$5"
Run Code Online (Sandbox Code Playgroud)

extMerge脚本:

#!/usr/bin/sh
echo $*
/c/Program\ Files\ \(x86\)/WinMerge/WinMergeU.exe $*
Run Code Online (Sandbox Code Playgroud)

因此,如果我更改名为index.html的文件,并运行git diff,则结果如下:

File …
Run Code Online (Sandbox Code Playgroud)

git external git-diff windows-7-x64

3
推荐指数
2
解决办法
2200
查看次数