All of lore.kernel.org
 help / color / mirror / Atom feed
From: saurabh gupta <saurabhgupta1403@gmail.com>
To: david@lang.hm
Cc: Junio C Hamano <gitster@pobox.com>,
	Johannes Schindelin <Johannes.Schindelin@gmx.de>,
	git@vger.kernel.org
Subject: Re: Google Summer of Code 2009: GIT
Date: Fri, 13 Mar 2009 01:15:23 +0530	[thread overview]
Message-ID: <ab9fa62a0903121245m621643bfq3c58557ccc9b266f@mail.gmail.com> (raw)
In-Reply-To: <alpine.DEB.1.10.0903121214390.16753@asgard.lang.hm>

On Fri, Mar 13, 2009 at 12:59 AM,  <david@lang.hm> wrote:
> On Fri, 13 Mar 2009, saurabh gupta wrote:
>
> defining terminology that was mentioned before
>
> merge drivers are run by git to do the merges and create the conflict
> markers. git already has a 'plug-in architecture' for these drivers (you can
> define file types and tell git to use a particular merge driver for this
> file type)
>
> merge helpers are run by the users if there is a conflict and make use of
> the markers. depending on what you end up using for conflict markers, you
> may not need to write a merge helper (for OO, if your conflict markers are
> good enough you can use OO to resolve conflicts easily, no need for a new
> tool)
>
>
> with this terminology, you can't do merge helpers without doing the merge
> drivers first (what does the helper look for as an indicator of a conflict?)
>
> I believe that there is a lot of potential for a configurable merge driver
> to support many similar formats.
>
> using the example of XML-based files, configurable options could include
>
> 1. is the file stored compressed or not
>
> 2. does the order of the tags matter
>
> 3. does whitespace matter
>
>  note: #2 and #3 may boil down to 'is this a document with XML markup, or
> are the XML tags the primary content'
>
> 4. how is the conflict marked
>
> 4a. wrap the conflicting tags in a set of tags that look like _
>
> 4b. if the conflict is in the content, not the tags, modify it similar to
> what we do with text today.
>
>  note: this still requires the new driver to decide if there is a conflict
> or not
>
> 4c. other (potentially including calling out to other code for more drastic
> restructuring)
>
>
> with a merge driver along these lines you can handle many different types of
> XML documents.
>
> with SVG you may be able to put the offending tags in different layers
>
> with OO you may be able to put in tags that indicate a merge conflict in a
> way that OO will directly handle
>
> etc.
>
> in many cases you may not even need to create a merge helper or library for
> other software you use. you just need to figure out what sort of
> manipulation would need to be done to to file to mark the conflict in a way
> that existing applications can understand.

Very well described, David. I agree with you and providing these merge
options to the user, merge drivers can do the work and mark the
conflicts according to the option. The work to do is to modify the
merge driver. I think in this way, even people who have only a
terminal can also gain from it. They can choose the apt option to see
the conflict markers in their way. So, the aim is to make merge driver
configurable and create the merged/conflicted file according to the
options.


-- 
Saurabh Gupta
Senior,
NSIT,New Delhi, India

  reply	other threads:[~2009-03-12 19:46 UTC|newest]

Thread overview: 76+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-03-11  4:52 Google Summer of Code 2009: GIT Saurabh Gupta
2009-03-11  5:56 ` Daniel Barkalow
     [not found]   ` <ab9fa62a0903102317l3a7322f7w5e4d9ba0e02af37b@mail.gmail.com>
2009-03-11  9:04     ` saurabh gupta
2009-03-11  8:59 ` David Symonds
2009-03-11  9:02   ` saurabh gupta
2009-03-11 11:55   ` Johannes Schindelin
2009-03-11 11:55     ` David Symonds
2009-03-11 12:52       ` Johannes Schindelin
2009-03-11 11:58 ` Johannes Schindelin
2009-03-11 12:11   ` saurabh gupta
2009-03-11 12:58     ` Johannes Schindelin
2009-03-11 13:55       ` saurabh gupta
2009-03-11 14:02         ` Johannes Schindelin
2009-03-11 14:13           ` saurabh gupta
2009-03-11 15:27             ` Rogan Dawes
2009-03-11 16:21               ` saurabh gupta
2009-03-11 15:38             ` Johannes Schindelin
2009-03-11 16:29               ` saurabh gupta
2009-03-11 16:29             ` Daniel Barkalow
2009-03-11 16:44               ` Johannes Schindelin
2009-03-12 12:56                 ` Michael J Gruber
2009-03-12 13:07                   ` Johannes Schindelin
2009-03-12 13:15                     ` Michael J Gruber
2009-03-12 18:25                       ` david
2009-03-11 16:58               ` saurabh gupta
2009-03-12 12:47                 ` Michael J Gruber
2009-03-11 16:32           ` david
2009-03-11 17:01             ` Johannes Schindelin
2009-03-11 19:30               ` david
2009-03-11 19:55                 ` Johannes Schindelin
2009-03-11 17:07             ` saurabh gupta
2009-03-11 19:29               ` david
2009-03-11 20:02                 ` saurabh gupta
2009-03-11 20:21                   ` david
2009-03-11 20:37                     ` Johannes Schindelin
2009-03-11 21:05                       ` david
2009-03-11 21:47                         ` Junio C Hamano
2009-03-12  1:57                           ` thestar
2009-03-12  7:40                             ` Junio C Hamano
2009-03-12 12:45                           ` saurabh gupta
2009-03-12 18:00                             ` david
2009-03-12 18:43                               ` Junio C Hamano
     [not found]                               ` <ab9fa62a0903121119j6c2a1d43kd9cda99db47b5e7c@mail.gmail.com>
2009-03-12 18:53                                 ` david
2009-03-12 19:00                                   ` saurabh gupta
2009-03-12 19:29                                     ` david
2009-03-12 19:45                                       ` saurabh gupta [this message]
2009-03-12 19:59                                         ` david
2009-03-12 20:03                                           ` saurabh gupta
2009-03-12 20:45                                             ` david
2009-03-13  3:15                                               ` saurabh gupta
2009-03-18 23:16                                             ` Johannes Schindelin
2009-03-18 23:55                                               ` david
2009-03-19  0:43                                                 ` Johannes Schindelin
2009-03-19  8:37                                                   ` david
2009-03-19 10:24                                                     ` Johannes Schindelin
2009-03-19 19:12                                                       ` david
2009-03-19 19:23                                                   ` saurabh gupta
2009-03-19  6:30                                               ` Caleb Cushing
2009-03-19 10:19                                                 ` Johannes Schindelin
2009-03-21 23:53                                                   ` Caleb Cushing
2009-03-19 19:17                                               ` saurabh gupta
2009-03-19 23:42                                                 ` Johannes Schindelin
2009-03-20  0:07                                                   ` david
2009-03-20  0:30                                                     ` Johannes Schindelin
2009-03-20  3:09                                                       ` david
2009-03-20  9:35                                                         ` Johannes Schindelin
2009-03-20 20:50                                                           ` david
2009-03-21 17:38                                                             ` saurabh gupta
     [not found]                                                   ` <ab9fa62a0903211031l78c7afadg9409a544f2bda7db@mail.gmail.com>
2009-03-21 17:36                                                     ` saurabh gupta
2009-03-12 20:18                                       ` Junio C Hamano
2009-03-12 12:42                     ` saurabh gupta
2009-03-12 18:03                       ` david
2009-03-12 18:23                         ` saurabh gupta
2009-03-13  9:41                           ` Rogan Dawes
2009-03-13 20:18                             ` saurabh gupta
2009-03-11 19:36 ` Junio C Hamano

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=ab9fa62a0903121245m621643bfq3c58557ccc9b266f@mail.gmail.com \
    --to=saurabhgupta1403@gmail.com \
    --cc=Johannes.Schindelin@gmx.de \
    --cc=david@lang.hm \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.