- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我已经阅读了关于这个主题的大量问答,并严格按照所有说明进行操作。但是,尝试使用 WinMerge 将 Git 设置为比较和 merge 时,我仍然感到头疼。
我使用 Git 终端执行了以下步骤:
git config --global diff.tool winmerge
git config --global difftool.winmerge.cmd "winmerge.sh \"$LOCAL\" \"$REMOTE\""
git config --global difftool.prompt false
我还在我的 PATH
变量中包含的目录中设置了一个脚本,内容如下:
#!/bin/sh
echo Launching WinMergeU.exe: $1 $2
"C:/Program Files/WinMerge/WinMergeU.exe" git /e /u /dl "Base" /dr "Mine" "$1" "$2""
当我执行
git mergetool
在 Git 终端中,我看到:
Merging:
first.txt
Normal merge conflict for 'first.txt':
{local}: modified
{remote}: modified
Launching WinMergeU.exe:
所以在我看来,$LOCAL
和 $REMOTE
变量没有将任何内容传递到 winmerge.sh
脚本中。我在这里做错了什么?我必须在配置部分假设它。
最佳答案
与我的 previous answer 相比(或 this one 或 that one ),您的步骤在 winmerge.sh
脚本
#!/bin/sh echo Launching WinMergeU.exe: $1 $2 "C:/Program Files/WinMerge/WinMergeU.exe" git /e /u /dl "Base" /dr "Mine" "$1" "$2"" ^ | (this shouldn't be here)
也就是说,这些答案是关于使用 winmerge
的 difftool ,不支持 3-way merge (只有local和remote,没有base)。
对于真正的 merge 工具,我推荐 kdiff3
(如“Is it possible for git-merge to ignore line-ending differences? ”)或 araxis
(如 "How to set Araxis as diff / merge tool for MSYS git?" 中所述),您可以在其中看到使用的三个 变量(本地、远程和基础)。
关于Git 和 WinMerge (msysgit),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4045199/
我正在 Windows 主机上设置 Git 服务器。我已经安装了最新的 Apache,并让它与 msysGit 一起工作。我根本没有使用 SSH;我可以通过 HTTP 推送和拉取。 现在我想添加一个接
我安装了新版本的 MSysGit,现在我无法直接从命令行(“称为 MINGW64”)运行 *.bat 文件。 我尝试搜索它,但我只看到需要先运行 cmd 的选项。 Out of a git conso
我查看了我的 github 存储库,发现我无意中将文件添加到了 msysgit 中,但有错别字。我没有将文件添加到名为“Domain”的目录,而是将它们添加到“DOmain”。 我尝试了 git mv
所以我似乎在设置 msysgit 时遇到了一些实际问题。我可以使用 putty 连接到我的 SSH 目录 ssh://user@host:port 而且我有正确的 key 。我也可以通过 使用 pli
我已经安装了msysgit,并且git使用了正确的ssh.exe。所有命令都在msysgit shell(程序文件x86 sh.exe)中执行。 然后我将〜/ .ssh / config文件设置为此
在我的 msysgit 版本下,我无法使用进程替换。 cat <(echo 'foo') sh.exe": cannot make pipe for process substitution: Fun
我使用提供的批处理文件(模拟 Linux 环境的批处理文件)启动 msysGit Bash。 Bash 在 msysGit 的主目录(在我的闪存驱动器上)中启动。我想离开这个目录转到我的项目目录(也在
如果执行一些显示很多文字的命令,滚动页面后文字会乱,有什么办法可以避免吗? 我不想要cygwin解决方案,git bash中的颜色使用起来更舒服,gitk之类的工具也很棒,如果没有解决方案,在Wind
我有一个包含 C# 代码的 git 存储库,我正在 Windows 上运行 MSysGit。 core.autocrlf 已打开,我正在使用来自 this question 的 .gitattribu
我在 Windows 上使用 msysgit 时遇到以下错误。无论我是从命令提示符还是从与 Git 捆绑在一起的 BASH 执行此操作都无关紧要: gpg: error loading `iconv.
我放弃了 cygwin's version of Git ,现在我想安装 msysgit相反。 问题是……它们都是 preview 版本。 我需要 Git 进行生产。那里有稳定版本吗? 更复杂的是,我
在浏览 chromium 代码文档时,我看到了这篇文章: http://code.google.com/p/chromium/wiki/UsingGit#Windows If you are usin
我已经阅读了关于这个主题的大量问答,并严格按照所有说明进行操作。但是,尝试使用 WinMerge 将 Git 设置为比较和 merge 时,我仍然感到头疼。 我使用 Git 终端执行了以下步骤: gi
我在网络驱动器上使用 msysgit (v1.7.7) 从 Windows 克隆了一个 Git 存储库。某些文件在存储库上标记为具有模式 100755。 使用 Windows 的 git bash 工
在我的 WinXP 机器上创建的提交消息在我的 Win7 机器上阅读时会生成警告。 我的名字包含特殊字符 (ö),我想这是问题的根源,因为我的名字在提交中。我在尝试 stash 在 winXP 上创建
这不是最好的编程问题,但让我们面对现实吧,服务器故障人员并不精通 git,所以我认为它更适合这些观众。 我想在我的 shell 中切换到 TortoiseGit 或 PortableGit,但我只剩下
最近我在使用 msysgit 时遇到这个错误,特别是当 git 输出生成一些非 ASCII 内容时: warning: Your console font probably doesn't suppo
我发现手册在这个问题上有点困惑,搜索以前的答案让我更加困惑。 最佳答案 Git(如在 Full Installer for Git 中)就足够了,来自 pre-requisite page . 它只需
我的 msysgit Git bash 命令行提示符现在看起来像这样: GitUserName@WorkStationName WorkSpacePath (BranchName) 我想在该行前面有一
我已经从这里安装了 msysgit Git-1.7.10-preview20120409.exe http://code.google.com/p/msysgit/downloads/list在我的
我是一名优秀的程序员,十分优秀!