git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: Google Summer of Code 2009: GIT

From
SGsaurabh gupta <saurabhgupta1403@gmail.com>
Date
Mar 19, 2009, 19:17 UTC
Message-ID
<ab9fa62a0903191217t5d0e6d9cn4915a425ed8084ff@mail.gmail.com>
In-Reply-To
<alpine.DEB.1.00.0903190003100.10279@pacific.mpi-cbg.de>
Hi all,
Sorry for replying so late as I was busy in my college's mid-semester exams :-|

On Thu, Mar 19, 2009 at 4:46 AM, Johannes Schindelin <Johannes.Schindelin@gmx.de> wrote:

Show 29 quoted lines
> Hi,
>
> On Fri, 13 Mar 2009, saurabh gupta wrote:
>
>> On Fri, Mar 13, 2009 at 1:29 AM,  <david@lang.hm> wrote:
>> > On Fri, 13 Mar 2009, saurabh gupta wrote:
>> >
>> >> 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.
>> >
>> > for the GSOC I suspect that the right thing to do is the define one or
>> > more merge drivers to create, and list what applications are going to
>> > be used for testing these merges.
>> >
>> > you and the mentor can decide what is a reasonable amount of work.
>>
>> I will very glad to hear about this thing from the mentor (Johannes
>> Schindelin, according to wiki). I will try to plan out the things in a
>> proper way to carry out this project if I get a chance to work on this
>> for GSoC 2009.
>
> Well, now that we have been accepted as an organization, we can move
> forward with this idea!
Congrats for getting accepted in GSoC 2009.
Show 28 quoted lines
> My main concern is that we define early on what should be the user
> interface, preferably with a quick sketch.
>
> The technical details, we can hash them out later, I have no doubt that
> with the help of the complete Git community, we can overcome almost every
> problem handling XML data or some such.
>
>> > it may be just doing an XML merge driver is a summer's worth of work,
>> > or it may be that it's not really enough and you should try to do
>> > another one or two.
>> >
>> > it also may be that there is a lot of overlap between different merge
>> > drivers, and once you have the XML driver the others become fairly
>> > trivial to do. (I'm thinking the config file examples I posted earlier
>> > in the thread)
>>
>> with the options given to the user, one can handle the config files
>> also where order doesn't matter and also the whitespaces problem can
>> also be handled in the similar way.
>
> In my humble opinion, we should focus on the data types we want to be
> able to support at the end of the summer first.
>
> For example, if we decide that OOXML is a must (as it is a proper
> standard, and many people will benefit from it), we will most likely end
> up in having to write a merge _driver_ (to handle those .zip files), _and_
> a merge _helper_, although we can avoid writing our own GUI, as we can
> create an OOXML that has its own version of conflict markers.

Well, for ODF type document, we can write a merge driver which will change the xml file in an appropriate way that OO can understand it and the user can see the merge result/conflict in a comfortable way. As described by Junio, in this case, a dedicated merge helper is not needed as OO can parse the markers made by merge-driver and provide the user to resolve the conflict and register the changes to index.

Show 6 quoted lines
>
> If we decide that SVG is something we want to support by the end of the
> summer, then we can probably avoid writing a merge _driver_, as plain text
> is handled reasonably well in Git.  OTOH it could turn out that there are
> _real_ conflicts in overlapping tag ids, and it would still be easier to
> write a merge driver, too.
Show 5 quoted lines
>
> IOW the details are not as important as
>
> - knowing what data types we want to support _at the least_, and what data
>  types we keep for the free skate,

As of now, how about going for XML files. For this summer, we can go for XML files and latex files can be handled later.

>
> - a clear picture of the user interface we want to be able to provide,
In my opinion, we have following things to do:

=> while merging an ODF document, merge-driver will merge the file at file level. If changes don't overlap, then it returns the result with a success. For example, if the file is changed only on one side, then the driver will simply add the new content.

=> If conflicts appear, then the merge driver will put the markers in an appropriate manner which the end-user application (e.g. open office) can understand and show the user. For example, the XML file of that ODF document will be modified and OO can show it to user in its way. We will have to study about the OO style of version marking. Another method is to implement the marker style in our own way. For example, to show any marker, the XML file is modified so that user can see markers like ">>>> " or "====" in openoffice....In this case, we will have to just change the xml content in this way.

>
> - a timeline (weekly milestones should be fine, I guess) what should be
>  achieved when, and

Timeline can be decided once we reach some conclusion and the work which needs to be done become clear to us.

Show 10 quoted lines
> - being flexible in how to support that (IOW if a merge driver appears
>  unnecessary first, but necessary later, we should be able to fit that
>  into both the design and the timeline).
>
> How does that sound?
>
> Ciao,
> Dscho
>
>
-- 
Saurabh Gupta
Senior,
NSIT,New Delhi, India
Previous: Caleb CushingNext: Johannes Schindelin
Message 67 of 76 in “Google Summer of Code 2009: GIT”
  1. Saurabh GuptaMar 11, 2009
  2. Daniel BarkalowMar 11, 2009
  3. David SymondsMar 11, 2009
  4. saurabh guptaMar 11, 2009
  5. Johannes SchindelinMar 11, 2009
  6. David SymondsMar 11, 2009
  7. Johannes SchindelinMar 11, 2009
  8. Johannes SchindelinMar 11, 2009
  9. saurabh guptaMar 11, 2009
  10. Johannes SchindelinMar 11, 2009
  11. saurabh guptaMar 11, 2009
  12. Johannes SchindelinMar 11, 2009
  13. saurabh guptaMar 11, 2009
  14. Rogan DawesMar 11, 2009
  15. saurabh guptaMar 11, 2009
  16. Johannes SchindelinMar 11, 2009
  17. saurabh guptaMar 11, 2009
  18. Daniel BarkalowMar 11, 2009
  19. Johannes SchindelinMar 11, 2009
  20. Michael J GruberMar 12, 2009
  21. Johannes SchindelinMar 12, 2009
  22. Michael J GruberMar 12, 2009
  23. david@lang.hmMar 12, 2009
  24. saurabh guptaMar 11, 2009
  25. Michael J GruberMar 12, 2009
  26. david@lang.hmMar 11, 2009
  27. Johannes SchindelinMar 11, 2009
  28. david@lang.hmMar 11, 2009
  29. Johannes SchindelinMar 11, 2009
  30. saurabh guptaMar 11, 2009
  31. david@lang.hmMar 11, 2009
  32. saurabh guptaMar 11, 2009
  33. david@lang.hmMar 11, 2009
  34. Johannes SchindelinMar 11, 2009
  35. david@lang.hmMar 11, 2009
  36. Junio C HamanoMar 11, 2009
  37. thestar@fussycoder.id.auMar 12, 2009
  38. Junio C HamanoMar 12, 2009
  39. saurabh guptaMar 12, 2009
  40. david@lang.hmMar 12, 2009
  41. Junio C HamanoMar 12, 2009
  42. saurabh guptaMar 12, 2009
  43. david@lang.hmMar 12, 2009
  44. saurabh guptaMar 12, 2009
  45. Rogan DawesMar 13, 2009
  46. saurabh guptaMar 13, 2009
  47. Junio C HamanoMar 11, 2009
  48. saurabh guptaMar 11, 2009
  49. david@lang.hmMar 12, 2009
  50. saurabh guptaMar 12, 2009
  51. david@lang.hmMar 12, 2009
  52. saurabh guptaMar 12, 2009
  53. david@lang.hmMar 12, 2009
  54. saurabh guptaMar 12, 2009
  55. david@lang.hmMar 12, 2009
  56. saurabh guptaMar 13, 2009
  57. Johannes SchindelinMar 18, 2009
  58. david@lang.hmMar 18, 2009
  59. Johannes SchindelinMar 19, 2009
  60. david@lang.hmMar 19, 2009
  61. Johannes SchindelinMar 19, 2009
  62. david@lang.hmMar 19, 2009
  63. saurabh guptaMar 19, 2009
  64. Caleb CushingMar 19, 2009
  65. Johannes SchindelinMar 19, 2009
  66. Caleb CushingMar 21, 2009
  67. saurabh guptaMar 19, 2009
  68. Johannes SchindelinMar 19, 2009
  69. david@lang.hmMar 20, 2009
  70. Johannes SchindelinMar 20, 2009
  71. david@lang.hmMar 20, 2009
  72. Johannes SchindelinMar 20, 2009
  73. david@lang.hmMar 20, 2009
  74. saurabh guptaMar 21, 2009
  75. Junio C HamanoMar 12, 2009
  76. saurabh guptaMar 21, 2009

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.