.\" generated with Ronn/v0.7.3 .\" http://github.com/rtomayko/ronn/tree/0.7.3 . .TH "KDB\-MERGE" "1" "2015-11-19" "" "" . .SH "NAME" \fBkdb\-merge\fR \- Three\-way merge of KeySets . .SH "SYNOPSIS" \fBkdb merge [options] ourpath theirpath basepath resultpath\fR . .TP ourpath Path to the keyset to serve as \fBours\fR . .TP theirpath path to the keyset to serve as \fBtheirs\fR . .TP basepath path to the \fBbase\fR keyset . .TP resultpath path without keys where the merged keyset will be saved . .SH "DESCRIPTION" Does a three\-way merge between keysets\. . .br On success the resulting keyset will be saved to mergepath\. . .br On unresolved conflicts nothing will be changed\. . .SH "THREE\-WAY MERGE" The \fBkdb merge\fR command uses a three\-way merge by default\. . .br A three\-way merge is when three versions of a file (or in this case, KeySet) are compared in order to automatically merge the changes made to the KeySet over time\. . .br These three versions of the KeySet are: . .TP \fBbase\fR The \fBbase\fR KeySet is the original version of the KeySet\. . .TP \fBours\fR The \fBours\fR KeySet represents the user\'s current version of the KeySet\. . .br This KeySet differs from \fBbase\fR for every key you changed\. . .TP \fBtheirs\fR The \fBtheirs\fR KeySet usually represents the default version of a KeySet (usually the package maintainer\'s version)\. . .br This KeySet differs from \fBbase\fR for every key someone has changed\. . .P The three\-way merge works by comparing the \fBours\fR KeySet and the \fBtheirs\fR KeySet to the \fBbase\fR KeySet\. By looking for differences in these KeySets, a new KeySet called \fBresult\fR is created that represents a merge of these KeySets\. . .SH "CONFLICTS" Conflicts occur when a Key has a different value in all three KeySets\. . .br Conflicts in a merge can be resolved using a \fIstrategy\fR with the \fB\-s\fR option\. To interactively resolve conflicts, use the \fB\-i\fR option\. . .SH "OPTIONS" . .IP "\(bu" 4 \fB\-H\fR, \fB\-\-help\fR: Show the man page\. . .IP "\(bu" 4 \fB\-V\fR, \fB\-\-version\fR: Print version info\. . .IP "\(bu" 4 \fBs\fR, \fB\-\-strategy \fR: Specify which strategy should be used to resolve conflicts\. . .IP "\(bu" 4 \fB\-v\fR, \fB\-\-verbose\fR: Explain what is happening\. . .IP "\(bu" 4 \fB\-i\fR, \fB\-\-interactive\fR Interactively resolve the conflicts\. . .IP "" 0 . .SH "EXAMPLES" To complete a simple merge of three KeySets: . .br \fBkdb merge user/ours user/theirs user/base user/result\fR . .P To complete a merge whilst using the \fBours\fR version of the KeySet to resolve conflicts: . .br \fBkdb merge \-s ours user/ours user/theirs user/base user/result\fR . .P To complete a three\-way merge and overwrite all current keys in the \fBresultpath\fR: . .br \fBkdb merge \-s cut user/ours user/theirs user/base user/result\fR . .SH "SEE ALSO" . .IP "\(bu" 4 elektra\-merge\-strategies(7) \fIelektra\-merge\-strategies\fR . .IP "" 0