Yes that makes sense. I was not aware of custom merge drivers, but indeed that may address my situation. I'll look into it. Thanks! On Tue, Nov 15, 2016 at 12:51 PM, Junio C Hamano <gitster@xxxxxxxxx> wrote: > John Rood <mr.john.rood@xxxxxxxxx> writes: > >> On Thu, Nov 3, 2016 at 10:57 AM, John Rood <mr.john.rood@xxxxxxxxx> wrote: >>> If the contents of a file initially are: >>> one >>> >>> three >>> and on branch A there is a commit, removing the blank line: >>> one >>> three >>> and on branch B there is a commit, adding 'two': >>> one >>> two >>> three >>> Normally, if you try to merge A into B (or B into A), git recognizes a >>> decision needs to be made between removing the second line or add >>> "two" to the second line. It would be convenient to have a merge >>> strategy that defaults to the latter in cases where the removed line >>> was a blank line (or a line containing only whitespace) ...something >>> like -Xignore-blank-line-removals. >> >> Is there any push-back on this, or is there a backlog that we can add >> this feature to? > > If you mean by "push-back" objections that say "this feature is evil > and should not be added to Git, ever", I do not think we saw any on > the list. The lack of response is most likely that everybody > thought "Meh." aka "It is not useful/interesting/valuable enough > feature to bother discussing." > > One thing I wondered was what you would want if the contents were > one/three without blank, A added blank between the two and B > replaced blank with two. As your example shows, in the filetype you > are dealing with, a blank line has no significant meaning (otherwise > you won't be ignoring the change A made to remove the blank in your > original example). The outcome desired by you may be one/two/three > without any blank in that case because of that. Which would lead to > the suspicion that ignore-blank-line-removals is not a good general > feature (i.e. in this other example, you want to ignore blank line > addition). Which further leads to the suspicion that the desire you > expressed in the original post is not well thought through to be a > useful specifification to build anything out of (yet), but is merely > a potentially interesting discussion starter. And nobody so far > found it interesting enough to spend time discussing it further to > make the wish detailed enough to be called a "design" of a new > feature. > > Having said all that. > > I suspect that you may not have to make any change to Git to do what > you want; can't you just use the 'merge' attribute with a custom > 3-way merge driver that removes an empty line? >