{"thread":{"id":"30025","subject":"git's behaviour during a 'both added' merge conflict","startedAt":"2012-03-22T14:23:24Z","lastAt":"2012-03-22T18:49:38Z","messageCount":2,"participants":["Jeremy Morton","Junio C Hamano"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"187471","messageId":"CAFsnPqrqz+HZGJHWp6YEWKJeXO2jYDw-qYfAdtHhDvYVmeTD1w@mail.gmail.com","threadId":"30025","inReplyTo":null,"subject":"git's behaviour during a 'both added' merge conflict","fromName":"Jeremy Morton","fromEmail":"jeremy@configit.com","sentAt":"2012-03-22T14:23:24Z","receivedAt":"2012-03-22T14:23:24Z","isPatch":false,"sender":{"key":"jeremy@configit.com","avatar":null},"body":"I've noticed that when you're merging and there is a 'both added'\nmerge conflict, git creates the .LOCAL and .REMOTE files for the\nmerge, but not the .BASE file.  Now, there isn't an actual base file\nbecause the file has been added anew in both branches, but wouldn't it\nmake sense for git to just create an empty .BASE file anyway?\nConceptually, new content is being added on both sides to an empty\ncontainer - the fact that it didn't exist as a file on the filesystem\nbefore is something git isn't meant to care about.  It also makes\nthings easier for merge tools which are expecting a .BASE file; in\npractice, scripts just usually create the empty .BASE file anyway.\nWhy not have git do this itself without a script?\n\nBest regards,\nJeremy Morton (Jez)\n"},{"id":"187492","messageId":"7vaa38xygt.fsf@alter.siamese.dyndns.org","threadId":"30025","inReplyTo":"CAFsnPqrqz+HZGJHWp6YEWKJeXO2jYDw-qYfAdtHhDvYVmeTD1w@mail.gmail.com","subject":"Re: git's behaviour during a 'both added' merge conflict","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2012-03-22T18:49:38Z","receivedAt":"2012-03-22T18:49:38Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Jeremy Morton <jeremy@configit.com> writes:\n\n> I've noticed that when you're merging and there is a 'both added'\n> merge conflict, git creates the .LOCAL and .REMOTE files for the\n> merge, but not the .BASE file.\n\nStrictly speaking, git doesn't, but I think mergetool may.\n\nYou may find this thread interesting:\n\n  http://thread.gmane.org/gmane.comp.version-control.git/188776/focus=188867\n\nwhich resulted in ec245ba (mergetool: Provide an empty file when needed,\n2012-01-19); that change is in v1.7.9.1 and upwards IIRC.\n"}]}