Regarding using KDiff3 merging tool

Yuri Chornoivan yurchor at ukr.net
Fri Aug 26 13:01:22 UTC 2016


п'ятниця, 26-сер-2016 18:14:15 ви написали:
> Hi Yuri,
> 
> Prashant (08/26): Thanks for the reply. But please answer the following:
> 
> i.                    In Windows environment, Is there any way that I can
> call Kdiff3 from command line + pass the choose_a_everywhere option in the
> command line itself.

No.

> Since such option is there in the front end tool, I am sure such option
> will be available through command line as well. Just that I would want to
> know the syntax.

It is available through D-Bus interface, but the D-Bus interface is not 
compiled in into KDiff3's Windows version.

> Please advise. Also I am looking for a tool which can work both on Windows
> and Unix.

I have not much experience, but there is a good comparison page on Wikipedia:

https://en.wikipedia.org/wiki/Comparison_of_file_comparison_tools

> Is it possible to speak to you or any member from your team and get things
> clarified. Please share your contact no and availability time-slot,
> timezone. Thank you for all your support.

Sorry, but no.

You can ask anybody on #linux IRC channel.

https://webchat.freenode.net/

I'm sure there are many good advisors who can give you support on the command 
line options there.

Best regards,
Yuri

> 
> Regards,
> Prashant
> 
> On Tue, Aug 23, 2016 at 6:13 PM, Yuri Chornoivan <yurchor at ukr.net> wrote:
> > 23 серпня 2016, 14:30:16, від "Prashant Pahurkar" <
> > 
> > prashant.pahurkar at gmail.com>:
> > >         Hi Yuri,
> > >         
> > >         
> > >         
> > >         
> > >         
> > >         
> > >         
> > >         Thanks for your reply.
> > >       
> > >         I have few questions/clarification as below:
> > >       1.    Yuri:- Anyway, KDiff3 (as any other KDE application) can be
> > 
> > controlled with D-Bus. See the instructive article here:
> > > http://www.linuxjournal.com/article/10455
> > > 
> > >  You can easily found merge_choose_a_everywhere in the KDiff3 D-Bus tree
> > 
> > under kdiff3/MainWindow_1/actions and set it.
> > 
> > >  Options can be passed through additional arguments to the Windows CALL.
> > >  
> > >         Prashant: I have gone through the link you have shared above but
> > 
> > I am not very clear. My questions are :
> > >         a.
> > >         
> > >         Do I need to install D-Bus as well in my system to use
> > 
> > choose_a_everywhere option before hand.
> > 
> > Oops... I have not tested this on Windows version of _KDiff3_ before
> > writing the answer. I works for stock KDE applications from KDE-Windows
> > and
> > for Linux version of KDiff3 (tested on Win XP) but it does not work for
> > KDiff3-Windows separate package (tested).
> > 
> > >         b.
> > >         
> > >         Once kdiff3 is launched and when I give 2 input files for
> > 
> > merging, then I can choose a or b everywhere option but question is I need
> > to understand how do I set such option via the command line. Pls advise.
> > 
> > It is impossible for the separate KDiff3 package on Windows. Now I know
> > it.
> > 
> > > 2.    Yuri: If you need non-interactive tool then why did you choose
> > 
> > Kdiff3? Why not use its backend (diff3 from diffutils), fc from Windows or
> > WinMerge command line part?
> > 
> > >         Prashant: I tried using diff3 which got available as part of
> > 
> > KDiff3 installation (in the kdiff3\bin folder)
> > 
> > >         But I was unable to neither run the diff3 application directly
> > 
> > nor via the batch file using Call command by passing file as parameters
> > 
> > >         For eg:
> > >         
> > >         
> > >         
> > >         call "C:\Program Files\kdiff3\bin\diff3.exe"
> > 
> > "C:\Users\xxx\Documents\Rnd Learning\n1.txt" “C:\Users\xxx\Documents\Rnd
> > Learning\n2.txt" -o "C:\Users\xxx\Documents\Rnd Learning\n3.txt"
> > 
> > >         Please advise on how do I use and invoke Diff3 which will merge
> > 
> > 2 files (With File A code dominating) and returning the output in 3rd
> > file.
> > All this to be achieved through command line.
> > 
> > Please use the Linux tools as expected (there are man pages for the in the
> > net).
> > 
> > In this case I recommend diff + sed from \bin. First you use diff:
> > 
> > call diff.exe -DVERSION1 file1.txt file2.txt > merged.txt
> > 
> > then use sed.exe to separate needed part from the diff. The idea is stolen
> > from here:
> > 
> > http://unix.stackexchange.com/questions/63425/how-to-use-> > patch-and-diff-to-merge-two-files
> > 
> > Some usefule recipes for sed can be found here:
> > 
> > http://sed.sourceforge.net/grabbag/tutorials/
> > 
> > Hope this helps,
> > Yuri
> > 
> > > Thanks.
> > > 
> > >         Regards,
> > >         
> > >         
> > >         
> > >         Prashant
> > > 
> > > On Fri, Aug 12, 2016 at 1:00 PM, Yuri Chornoivan  wrote:
> > > > Hi,
> > > > 
> > > > 
> > > > Please find some answers below.
> > > > 
> > > > написане Fri, 12 Aug 2016 09:39:32 +0300, Prashant Pahurkar :
> > > > > Gentle reminder.
> > > > > 
> > > > > Please reply if it is possible to have the required functionality.
> > > > > 
> > > > > 
> > > > > Regards,
> > > > > 
> > > > > Prashant
> > > > > 
> > > > > On 11 Aug 2016 18:53, "Prashant Pahurkar"
> > > > > 
> > > > > wrote:
> > > > > > Gentle reminder. ..
> > > > > > 
> > > > > > Awaiting your reply.
> > > > > > 
> > > > > > 
> > > > > > On 10 Aug 2016 16:46, "Prashant Pahurkar"
> > > > > > 
> > > > > > wrote:
> > > > > > > Hi Burkhard,
> > > > > > > 
> > > > > > > 
> > > > > > > 
> > > > > > > Thanks for the reply.
> > > > > > > 
> > > > > > > I have gone through the link you have shared but what I am
> > 
> > looking out
> > 
> > > > > > is somewhat different and is as follows:
> > > > > > > 1. I want to merge 2 files and auto resolve the conflict without
> > 
> > any
> > 
> > > > > > manunal intervention.
> > > > > > 
> > > > > > > Lets say I will provide the input as:- In Conflict situation it
> > 
> > should
> > 
> > > > > > always pick it up from File A and override.
> > > > > > 
> > > > > > > Is it possible without manual intervention.
> > > > > > > 
> > > > > > > I guess this is possible by Manual intervention i.e. by choosing
> > 
> > the
> > 
> > > > > > option of selecting "Choose A from everywhere" - but how to
> > 
> > achieve this
> > 
> > > > > > without manual intervention.
> > > > > > 
> > > > > > > It means how do I default or set the "Choose A from everywhere"
> > 
> > option
> > 
> > > > > > before hand.
> > > > 
> > > > Hmm... If you need non-interactive tool then why did you choose
> > 
> > Kdiff3? Why not use its backend (diff3 from diffutils), fc from Windows or
> > WinMerge command line part?
> > 
> > > > Anyway, KDiff3 (as any other KDE application) can be controlled with
> > 
> > D-Bus. See the instructive article here:
> > > > http://www.linuxjournal.com/article/10455
> > > > 
> > > > 
> > > > You can easily found merge_choose_a_everywhere in the KDiff3 D-Bus
> > 
> > tree under kdiff3/MainWindow_1/actions and set it.
> > 
> > > > Options can be passed through additional arguments to the Windows
> > > > CALL.
> > > > 
> > > > 
> > > > Hope this helps.
> > > > 
> > > > 
> > > > Best regards,
> > > > 
> > > > Yuri
> > > > 
> > > > > > > 2. In the above example how do I set this option when calling
> > 
> > KDiff3
> > 
> > > > > > from command prompt.
> > > > > > 
> > > > > > > For eg:
> > > > > > > 
> > > > > > > I am using a batch file and using the following command
> > > > > > > 
> > > > > > > call "C:\Program Files\kdiff3\kdiff3.exe"
> > 
> > "C:\Users\xx\Documents\Rnd
> > 
> > > > > > Learning\n1.txt" "C:\Users\xx\Documents\Rnd Learning\n2.txt"
> > > > > > 
> > > > > > -o "C:\Users\xx\Documents\Rnd Learning\n3.txt"
> > > > > > 
> > > > > > > How do I get the merge output in n3.txt which will have the
> > > > > > > merge
> > > > > > 
> > > > > > product of n1.txt and n2.txt?
> > > > > > 
> > > > > > > How do I set the option of "Choose A from everywhere" through
> > > > > > > the
> > > > > > 
> > > > > > command prompt i.e What should I add in the above command line to
> > 
> > achieve
> > 
> > > > > > the "Choose A from everywhere" option.
> > > > > > 
> > > > > > > Awaiting your reply.
> > > > > > > 
> > > > > > > 
> > > > > > > 
> > > > > > > Regards,
> > > > > > > 
> > > > > > > Prashant
> > > > > > > 
> > > > > > > 
> > > > > > > 
> > > > > > > On Tue, Aug 9, 2016 at 7:58 PM, Burkhard Lück
> > > > > > 
> > > > > > wrote:
> > > > > > >> Am Dienstag, 9. August 2016, 18:21:02 CEST schrieb Prashant
> > 
> > Pahurkar:
> > > > > > >> > Hi,
> > > > > > >> > 
> > > > > > >> > 
> > > > > > >> > 
> > > > > > >> > I have certain doubts and clarification required wrt using
> > 
> > KDiff3
> > 
> > > > > > tool as
> > > > > > 
> > > > > > >> > follows:
> > > > > > >> > 
> > > > > > >> > 1. I want to merge 2 files and auto resolve the conflict by
> > 
> > adding
> > 
> > > > > > first
> > > > > > 
> > > > > > >> > lines from File A and then appending it with Lines from B. Is
> > 
> > it
> > 
> > > > > > possible
> > > > > > 
> > > > > > >> > without manual intervention.
> > > > > > >> > 
> > > > > > >> > 2. Also Can i achieve the same using command prompt.
> > > > > > >> > 
> > > > > > >> > For ex: I am using a batch file and using the following
> > 
> > command
> > 
> > > > > > >> > call "C:\Program Files\kdiff3\kdiff3.exe" --auto
> > > > > > >> > 
> > > > > > >> > "C:\Users\296170\Documents\Rnd Learning\n1.txt"
> > > > > > >> > 
> > > > > > >> > "C:\Users\296170\Documents\Rnd Learning\n2.txt" -o
> > > > > > >> > 
> > > > > > >> > "C:\Users\296170\Documents\Rnd Learning\n3.txt"
> > > > > > >> > 
> > > > > > >> > 
> > > > > > >> > 
> > > > > > >> > This will display the page where it will ask me to select
> > 
> > from File A
> > 
> > > > > > or B
> > > > > > 
> > > > > > >> > to resolve the conflict. But through command prompt I would
> > 
> > like to
> > 
> > > > > > get the
> > > > > > 
> > > > > > >> > merge output in n3.txt which will have the merge product of
> > 
> > n1.txt and
> > 
> > > > > > >> > n2.txt.
> > > > > > >> > 
> > > > > > >> > Please let me know if this is possible and what would be the
> > 
> > command
> > 
> > > > > > to
> > > > > > 
> > > > > > >> > achieve this?
> > > > > > >> 
> > > > > > >> Please read https://docs.kde.org/trunk4/
> > 
> > en/extragear-utils/kdiff3/
> > 
> > > > > > >> documentation.html#commandline
> > > > > > >> 
> > > > > > >> 
> > > > > > >> 
> > > > > > >> --
> > > > > > >> 
> > > > > > >> Burkhard Lück



More information about the kde-doc-english mailing list