From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrea Crotti Subject: Re: Git merge tool for Org files Date: Sat, 20 Aug 2011 16:17:51 +0200 Message-ID: <4E4FC20F.7090101@gmail.com> References: <2DC59D99-FACF-40A2-9914-182C6224BD76@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Return-path: Received: from eggs.gnu.org ([140.186.70.92]:38317) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QumN4-0006ia-Ix for emacs-orgmode@gnu.org; Sat, 20 Aug 2011 10:17:59 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QumN3-00086v-Ar for emacs-orgmode@gnu.org; Sat, 20 Aug 2011 10:17:58 -0400 Received: from mail-wy0-f169.google.com ([74.125.82.169]:61803) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QumN3-00086q-6W for emacs-orgmode@gnu.org; Sat, 20 Aug 2011 10:17:57 -0400 Received: by wyi11 with SMTP id 11so3131761wyi.0 for ; Sat, 20 Aug 2011 07:17:55 -0700 (PDT) In-Reply-To: <2DC59D99-FACF-40A2-9914-182C6224BD76@gmail.com> List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: Carsten Dominik Cc: Brian Gough , Org Mode List On 08/18/2011 12:45 PM, Carsten Dominik wrote: > Hi, > > I was wondering if anyone here has the skills and interest to write > a git merge driver for Org mode files, in the way > > http://git.savannah.gnu.org/gitweb/?p=gnulib.git;a=blob;f=lib/git-merge-changelog.c > > does this for GNU style ChangeLog files? > > One of the obstacle for using Org-mode for collaborative programs is that > many operations add or remove text from the beginning or end of a file, > or which add or remove a subnode from an outline tree. > These are operations that confuse the git merger, in particular > if two people have added something to a file, or removed/added > sequential sibling nodes. > > I believe that this could be solved with a dedicated merge driver > that understands the integrity of an outline (sub)tree, and that > knows that the sequence of two new subtrees added by different people > does not matter. > > The idea for this is actually (I believe) from Brian Gough who asked me > about it at FOSDEM. I have now also run into this problem and would > really find it great if such a merge driver could be written. > Unfortunately, I do not have the skill for this. > > - Carsten Does the merge driver need to be written in C? It looks quite a complex task considering that org-mode files are not so easy to parse... Anyway a partly unrelated thing, with git attributes I'm able to see the diff of crypted org files very easily (maybe someone is interested), adding to .git/config: [diff "gpg"] textconv = gpg2 --decrypt and to .gitattributes: *.gpg diff=gpg