James Robertson | 11 Aug 2010 17:15

Merging Visual Studio Project Files (again)

We've all been there.  Some of us more than others.  Well, after being stuck trying to resolve a merge with over
9000 conflicts, I finally decided to do something about it.

<ShamelessPlug>
Project: Merge is a tool for comparing and merging XML files.  You can find it and more information at http://www.projectmerge.com
</ShamelessPlug>

There's quite a bit of documentation missing at the moment, so please don't hesitate to ask if you have any problems.

Umm, that's about it really.  I hope at least some of you find it useful.

James
_______________________________________________
Sweng-Gamedev mailing list
Sweng-Gamedev <at> lists.midnightryder.com
http://lists.midnightryder.com/listinfo.cgi/sweng-gamedev-midnightryder.com

Jon Watte | 12 Aug 2010 19:45
Picon
Gravatar

Re: Merging Visual Studio Project Files (again)

There's two ways of solving a problem:

1) work hard to solve the problem (what you did)
2) eliminate the problem in the first place

Generally, I've had more success with 2) when it comes to project files. Typically, this means using something like cmake, or some home-grown script, to generate the project files from some easier-to-use source data. Which, generally, ends up being a lot easier to merge, and conflicts much less!

Sincerely,

jw

--
Americans might object: there is no way we would sacrifice our living standards for the benefit of people in the rest of the world. Nevertheless, whether we get there willingly or not, we shall soon have lower consumption rates, because our present rates are unsustainable.



On Wed, Aug 11, 2010 at 8:15 AM, James Robertson <james <at> osodata.com> wrote:
We've all been there.  Some of us more than others.  Well, after being stuck trying to resolve a merge with over 9000 conflicts, I finally decided to do something about it.

<ShamelessPlug>
Project: Merge is a tool for comparing and merging XML files.  You can find it and more information at http://www.projectmerge.com
</ShamelessPlug>

There's quite a bit of documentation missing at the moment, so please don't hesitate to ask if you have any problems.

Umm, that's about it really.  I hope at least some of you find it useful.

James
_______________________________________________
Sweng-Gamedev mailing list
Sweng-Gamedev <at> lists.midnightryder.com
http://lists.midnightryder.com/listinfo.cgi/sweng-gamedev-midnightryder.com

_______________________________________________
Sweng-Gamedev mailing list
Sweng-Gamedev <at> lists.midnightryder.com
http://lists.midnightryder.com/listinfo.cgi/sweng-gamedev-midnightryder.com
Steven Kah Hien Wong | 12 Aug 2010 20:15
Gravatar

Re: Merging Visual Studio Project Files (again)

Nice! I've rarely run into this issue... but if I ever do, it sounds like something useful to look into. :)

On 12 August 2010 13:45, Jon Watte <jwatte <at> gmail.com> wrote:
There's two ways of solving a problem:
1) work hard to solve the problem (what you did)
2) eliminate the problem in the first place

Generally, I've had more success with 2) when it comes to project files. Typically, this means using something like cmake, or some home-grown script, to generate the project files from some easier-to-use source data. Which, generally, ends up being a lot easier to merge, and conflicts much less!

Sincerely,

jw

--
Americans might object: there is no way we would sacrifice our living standards for the benefit of people in the rest of the world. Nevertheless, whether we get there willingly or not, we shall soon have lower consumption rates, because our present rates are unsustainable.



On Wed, Aug 11, 2010 at 8:15 AM, James Robertson <james <at> osodata.com> wrote:
We've all been there.  Some of us more than others.  Well, after being stuck trying to resolve a merge with over 9000 conflicts, I finally decided to do something about it.

<ShamelessPlug>
Project: Merge is a tool for comparing and merging XML files.  You can find it and more information at http://www.projectmerge.com
</ShamelessPlug>

There's quite a bit of documentation missing at the moment, so please don't hesitate to ask if you have any problems.

Umm, that's about it really.  I hope at least some of you find it useful.

James
_______________________________________________
Sweng-Gamedev mailing list
Sweng-Gamedev <at> lists.midnightryder.com
http://lists.midnightryder.com/listinfo.cgi/sweng-gamedev-midnightryder.com


_______________________________________________
Sweng-Gamedev mailing list
Sweng-Gamedev <at> lists.midnightryder.com
http://lists.midnightryder.com/listinfo.cgi/sweng-gamedev-midnightryder.com


_______________________________________________
Sweng-Gamedev mailing list
Sweng-Gamedev <at> lists.midnightryder.com
http://lists.midnightryder.com/listinfo.cgi/sweng-gamedev-midnightryder.com
James Robertson | 12 Aug 2010 20:37

Re: Merging Visual Studio Project Files (again)

Yep, when I last looked at generating project files (more than a couple of years ago) there didn't seem to be
anything around that did exactly what we wanted, and there was fairly strong resistance to spending any
significant amount of time rolling our own system or adapting an existing one.  Which is why we stuck with them.

While quite a few people have moved to generating project files, I'm sure a lot more are still sticking to
just using them as is.

I should point out that Project: Merge doesn't just deal with project files though.  It can handle any XML
file.  I merely mentioned project files because I knew people had experienced similar problems resolving
conflicts that I had in the past.

But even if nobody ever uses Project: Merge, it was still an interesting little project to work on.  :)

James

Jon Watte wrote:
> There's two ways of solving a problem:
> 1) work hard to solve the problem (what you did)
> 2) eliminate the problem in the first place
> 
> Generally, I've had more success with 2) when it comes to project files. 
> Typically, this means using something like cmake, or some home-grown 
> script, to generate the project files from some easier-to-use source 
> data. Which, generally, ends up being a lot easier to merge, and 
> conflicts much less!
> 
> Sincerely,
> 
> jw
> 
> --
> Americans might object: there is no way we would sacrifice our living 
> standards for the benefit of people in the rest of the world. 
> Nevertheless, whether we get there willingly or not, we shall soon have 
> lower consumption rates, because our present rates are unsustainable.
> 
> 
> 
> On Wed, Aug 11, 2010 at 8:15 AM, James Robertson <james <at> osodata.com 
> <mailto:james <at> osodata.com>> wrote:
> 
>     We've all been there.  Some of us more than others.  Well, after
>     being stuck trying to resolve a merge with over 9000 conflicts, I
>     finally decided to do something about it.
> 
>     <ShamelessPlug>
>     Project: Merge is a tool for comparing and merging XML files.  You
>     can find it and more information at http://www.projectmerge.com
>     </ShamelessPlug>
> 
>     There's quite a bit of documentation missing at the moment, so
>     please don't hesitate to ask if you have any problems.
> 
>     Umm, that's about it really.  I hope at least some of you find it
>     useful.
> 
>     James
>     _______________________________________________
>     Sweng-Gamedev mailing list
>     Sweng-Gamedev <at> lists.midnightryder.com
>     <mailto:Sweng-Gamedev <at> lists.midnightryder.com>
>     http://lists.midnightryder.com/listinfo.cgi/sweng-gamedev-midnightryder.com
> 
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> Sweng-Gamedev mailing list
> Sweng-Gamedev <at> lists.midnightryder.com
> http://lists.midnightryder.com/listinfo.cgi/sweng-gamedev-midnightryder.com
_______________________________________________
Sweng-Gamedev mailing list
Sweng-Gamedev <at> lists.midnightryder.com
http://lists.midnightryder.com/listinfo.cgi/sweng-gamedev-midnightryder.com

Mike Acton | 12 Aug 2010 21:47
Picon
Gravatar

Re: Merging Visual Studio Project Files (again)

Hey James,


That looks like it could be a handy tool. It would be great if it could also support merging of JSON formatted files.

Mike.

On Thu, Aug 12, 2010 at 11:37 AM, James Robertson <james <at> osodata.com> wrote:
Yep, when I last looked at generating project files (more than a couple of years ago) there didn't seem to be anything around that did exactly what we wanted, and there was fairly strong resistance to spending any significant amount of time rolling our own system or adapting an existing one.  Which is why we stuck with them.

While quite a few people have moved to generating project files, I'm sure a lot more are still sticking to just using them as is.

I should point out that Project: Merge doesn't just deal with project files though.  It can handle any XML file.  I merely mentioned project files because I knew people had experienced similar problems resolving conflicts that I had in the past.

But even if nobody ever uses Project: Merge, it was still an interesting little project to work on.  :)


James



Jon Watte wrote:
There's two ways of solving a problem:
1) work hard to solve the problem (what you did)
2) eliminate the problem in the first place

Generally, I've had more success with 2) when it comes to project files. Typically, this means using something like cmake, or some home-grown script, to generate the project files from some easier-to-use source data. Which, generally, ends up being a lot easier to merge, and conflicts much less!

Sincerely,

jw

--
Americans might object: there is no way we would sacrifice our living standards for the benefit of people in the rest of the world. Nevertheless, whether we get there willingly or not, we shall soon have lower consumption rates, because our present rates are unsustainable.



On Wed, Aug 11, 2010 at 8:15 AM, James Robertson <james <at> osodata.com <mailto:james <at> osodata.com>> wrote:

   We've all been there.  Some of us more than others.  Well, after
   being stuck trying to resolve a merge with over 9000 conflicts, I
   finally decided to do something about it.

   <ShamelessPlug>
   Project: Merge is a tool for comparing and merging XML files.  You
   can find it and more information at http://www.projectmerge.com
   </ShamelessPlug>

   There's quite a bit of documentation missing at the moment, so
   please don't hesitate to ask if you have any problems.

   Umm, that's about it really.  I hope at least some of you find it
   useful.

   James
   _______________________________________________
   Sweng-Gamedev mailing list
   Sweng-Gamedev <at> lists.midnightryder.com
   <mailto:Sweng-Gamedev <at> lists.midnightryder.com> ------------------------------------------------------------------------

_______________________________________________
Sweng-Gamedev mailing list
Sweng-Gamedev <at> lists.midnightryder.com
http://lists.midnightryder.com/listinfo.cgi/sweng-gamedev-midnightryder.com
James Robertson | 12 Aug 2010 22:01

Re: Merging Visual Studio Project Files (again)

Yes, I agree. :)

One of the entries in my (ever-expanding) todo list is splitting the merge engine out into a plugin-based
architecture so that I can add support for other structured text formats in a consistant manner.  (My
initial thought here was a plugin that comprehends source code, so reordering functions in a file or
class, for example, wouldn't introduce unimportant changes/conflicts.)

It's not a small task though, and I do have other things I want to get done first.  But one day...  :)

Mike Acton wrote:
> Hey James,
> 
> That looks like it could be a handy tool. It would be great if it could 
> also support merging of JSON formatted files.
> 
> Mike.
> 
> On Thu, Aug 12, 2010 at 11:37 AM, James Robertson <james <at> osodata.com 
> <mailto:james <at> osodata.com>> wrote:
> 
>     Yep, when I last looked at generating project files (more than a
>     couple of years ago) there didn't seem to be anything around that
>     did exactly what we wanted, and there was fairly strong resistance
>     to spending any significant amount of time rolling our own system or
>     adapting an existing one.  Which is why we stuck with them.
> 
>     While quite a few people have moved to generating project files, I'm
>     sure a lot more are still sticking to just using them as is.
> 
>     I should point out that Project: Merge doesn't just deal with
>     project files though.  It can handle any XML file.  I merely
>     mentioned project files because I knew people had experienced
>     similar problems resolving conflicts that I had in the past.
> 
>     But even if nobody ever uses Project: Merge, it was still an
>     interesting little project to work on.  :)
> 
> 
>     James
> 
> 
> 
>     Jon Watte wrote:
> 
>         There's two ways of solving a problem:
>         1) work hard to solve the problem (what you did)
>         2) eliminate the problem in the first place
> 
>         Generally, I've had more success with 2) when it comes to
>         project files. Typically, this means using something like cmake,
>         or some home-grown script, to generate the project files from
>         some easier-to-use source data. Which, generally, ends up being
>         a lot easier to merge, and conflicts much less!
> 
>         Sincerely,
> 
>         jw
> 
>         --
>         Americans might object: there is no way we would sacrifice our
>         living standards for the benefit of people in the rest of the
>         world. Nevertheless, whether we get there willingly or not, we
>         shall soon have lower consumption rates, because our present
>         rates are unsustainable.
> 
> 
> 
>         On Wed, Aug 11, 2010 at 8:15 AM, James Robertson
>         <james <at> osodata.com <mailto:james <at> osodata.com>
>         <mailto:james <at> osodata.com <mailto:james <at> osodata.com>>> wrote:
> 
>            We've all been there.  Some of us more than others.  Well, after
>            being stuck trying to resolve a merge with over 9000 conflicts, I
>            finally decided to do something about it.
> 
>            <ShamelessPlug>
>            Project: Merge is a tool for comparing and merging XML files.
>          You
>            can find it and more information at http://www.projectmerge.com
>            </ShamelessPlug>
> 
>            There's quite a bit of documentation missing at the moment, so
>            please don't hesitate to ask if you have any problems.
> 
>            Umm, that's about it really.  I hope at least some of you find it
>            useful.
> 
>            James
>            _______________________________________________
>            Sweng-Gamedev mailing list
>            Sweng-Gamedev <at> lists.midnightryder.com
>         <mailto:Sweng-Gamedev <at> lists.midnightryder.com>
>            <mailto:Sweng-Gamedev <at> lists.midnightryder.com
>         <mailto:Sweng-Gamedev <at> lists.midnightryder.com>>
> 
>          
>          http://lists.midnightryder.com/listinfo.cgi/sweng-gamedev-midnightryder.com
> 
> 
> 
>         ------------------------------------------------------------------------
> 
> 
>         _______________________________________________
>         Sweng-Gamedev mailing list
>         Sweng-Gamedev <at> lists.midnightryder.com
>         <mailto:Sweng-Gamedev <at> lists.midnightryder.com>
>         http://lists.midnightryder.com/listinfo.cgi/sweng-gamedev-midnightryder.com
> 
>     _______________________________________________
>     Sweng-Gamedev mailing list
>     Sweng-Gamedev <at> lists.midnightryder.com
>     <mailto:Sweng-Gamedev <at> lists.midnightryder.com>
>     http://lists.midnightryder.com/listinfo.cgi/sweng-gamedev-midnightryder.com
> 
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> Sweng-Gamedev mailing list
> Sweng-Gamedev <at> lists.midnightryder.com
> http://lists.midnightryder.com/listinfo.cgi/sweng-gamedev-midnightryder.com
_______________________________________________
Sweng-Gamedev mailing list
Sweng-Gamedev <at> lists.midnightryder.com
http://lists.midnightryder.com/listinfo.cgi/sweng-gamedev-midnightryder.com


Gmane