是否可以在kdiff中逐个复制一个更改或多个更改?WinMerge中有这样的选项,允许将chnge从一个文件复制到第二个文件而不进行合并.
我需要将一些文件中的一些更改复制到另一个文件,并希望手动完成.
KDiff3随附一个diff3_cmd.bat,用于svn diff3-cmd.见下文(评论摘录)
SET DIFF3="C:\Program Files\KDiff3\kdiff3.exe"
SHIFT
SHIFT
SET MINE=%7
SET OLDER=%8
SET YOURS=%9
%DIFF3% %OLDER% %MINE% %YOURS% -o merged.txt
type merged.txt
del merged.txt
Run Code Online (Sandbox Code Playgroud)
根据文档,我应该能够传递--auto隐藏GUI.
--auto No GUI if all conflicts are auto-solvable. (Needs -o file)
Run Code Online (Sandbox Code Playgroud)
然而,它仍然弹出一个对话框说
Total number of conflicts: 6
Nr of automatically solved conflicts: 6
Nr of unsolved conflicts: 0
Run Code Online (Sandbox Code Playgroud)
我尝试添加--cs "ShowInfoDialogs=0",但是当有未解决的冲突时,它会隐藏对话框.
是否可以选择在已解决的冲突上完全隐藏GUI,但在发生冲突时显示GUI和正常对话框?
或者,是否可以进行干运行以确定是否存在任何未解决的冲突,--cs "ShowInfoDialogs=0"如果可以完全解决并且--cs "ShowInfoDialogs=1"是否需要手动干预则使用?
刚才我有另外一个问题的建议,我正在尝试将我的功能分支合并到主干的工作副本目录中的主干的工作副本.由于一些冲突,我正在使用KDiff3来解决它们.但是我不确定这里有什么Base,Mine和他们的意思?在我的情况下(合并分支到主干):
我的 - 行李箱的工作副本,
基地--- ???
他们--- ???
另一个基本问题:解决冲突和保存后,编辑后的版本将保存在主干的本地工作副本中.我的理解是否正确?
实际上我已经在谷歌上搜索了一段时间,以避免在这里提出相同的简单问题.但是我找不到关于这些虚拟问题的任何简单解释.
kdiff3是一个GUI diff工具,允许您创建两个/三个文件的差异,并有选择地选择组成合并文件的行.有命令行等价吗?
有谁知道如何在静默模式下使用“kdiff3”命令执行本地文件的三向自动合并,无论合并结果如何,都不会显示 kdiff3 GUI?
我希望看到 kdiff3 的行为如下:
- 如果自动合并成功,Kdiff3 返回“0”代码
- 如果需要手动解决冲突,Kdiff3 返回 <>“0”代码
我将运行的 kdiff3 命令:
kdiff3 -m file1 file2 file3 -o Outputfile --auto
Run Code Online (Sandbox Code Playgroud) 我们使用Mercurial(+ Tortoise Hg)作为VCS,使用Kdiff作为差异和合并工具.
有些文件会自动合并,有时这个自动合并结果很奇怪:
public static Method()
<<<<<<< local
{
DoSmth();
}
=======
{
DoSmth2();
}
>>>>>>> other
Run Code Online (Sandbox Code Playgroud)
似乎kdiff对文件中未解决的冲突没有做任何事情,但将其标记为已解决.也许kdiff有时不理解diff文件格式?hg和kdiff集成中的一些错误?
也似乎最近出现了这个问题,可能是新版本的hg/tortoise hg/kdiff的问题?
我们正在使用:
来自mercurial.ini:
[ui]
merge = kdiff3
[tortoisehg]
editor=VisualStudio
vdiff=meld
[merge-tools]
meld.executable = C:\Program Files (x86)\Meld\meld.exe
meld.priority = 1
meld.premerge = False
meld.args = $local $base $other
[diff]
git = True
Run Code Online (Sandbox Code Playgroud)
即使手动合并也会出现问题.脚步:
在这里!父1(中间列)包含'dest','source'作为文件的一部分.但是这个文件中没有这样的行.
似乎HG给kdiff文件提供了一些Kdiff不能/不可理解的差异信息.