Skip to content
This repository has been archived by the owner on Nov 18, 2021. It is now read-only.

Support of merge=union #487

Open
koppor opened this issue Oct 10, 2015 · 12 comments
Open

Support of merge=union #487

koppor opened this issue Oct 10, 2015 · 12 comments

Comments

@koppor
Copy link

koppor commented Oct 10, 2015

When merging a branch, it often is the case that there is a conflict in the CHANGELOG only. This is not a realy confligt as the CHANGELOG entries simple have to be merged. This can be configured in git itself by using a merge=union attribute. GitHub currently doesn't support that kind of merge. It would be very helpful if github would.

Blog-Post explaining it in detail: https://about.gitlab.com/2015/02/10/gitlab-reduced-merge-conflicts-by-90-percent-with-changelog-placeholders/

Discussion at keep-a-changelog: olivierlacan/keep-a-changelog#56

@koppor
Copy link
Author

koppor commented Oct 10, 2015

GitHub staff on 10 Oct 2015 16:03:13 +0200:

We've added a note to this suggestion on our internal Feature Request List.

@kemitchell
Copy link

@koppor: Thanks for creating this issue and posting GitHub's response. I've sent my own note through their contact form to put my name behind the feature request, too.

The use case that brought me here is a little different: AUTHORS files, which list contributors. In terms of the bits and bytes, it's a lot like CHANGELOG, except folks append lines to the end of the file.

@kemitchell
Copy link

I received my own reply e-mail assuring that my feedback has been recorded.

methane added a commit to methane/cpython that referenced this issue Mar 4, 2017
Github doesn't support it (ref. isaacs/github#487).  So it can't ease
conflict on Github.

Additionally, it can make trouble when cherry-pick. (ref. pythonGH-212)
methane added a commit to python/cpython that referenced this issue Mar 4, 2017
Github doesn't support it (ref. isaacs/github#487).  So it can't ease
conflict on Github.

Additionally, it can make trouble when cherry-pick. (ref. GH-212)
Mariatta pushed a commit to Mariatta/cpython that referenced this issue Apr 4, 2017
Github doesn't support it (ref. isaacs/github#487).  So it can't ease
conflict on Github.

Additionally, it can make trouble when cherry-pick. (ref. pythonGH-212)
(cherry picked from commit 060d2d7)
Mariatta pushed a commit to Mariatta/cpython that referenced this issue Apr 4, 2017
Github doesn't support it (ref. isaacs/github#487).  So it can't ease
conflict on Github.

Additionally, it can make trouble when cherry-pick. (ref. pythonGH-212)
@powpow12
Copy link

powpow12 commented Aug 23, 2017

Thanks @koppor, I have also submitted the contact form and will update if github gets back to me. Just curious, does anyone know why doesn't github have an actual feature request workflow where people can weigh in? It has been two years since that blog post came out and the UI problem still exists with no published workaround. If my competitor was creating features and publishing them I would work to roll them in a timely manner or at least have a similar workaround.

@glensc
Copy link

glensc commented Aug 24, 2017

gitlab now has merge=union support, because the underlying rugged library has the support since v0.25 (use v0.25.1.1 with critical fixes)

and as it's github's library, i believe they rely on that library as well. so perhaps it just works now if they upgraded library in their backends?

@powpow12
Copy link

We have an issue opened internally about this subject and I've added your comments to the existing discussion. I can't promise if or when this will be added but we'll keep you updated with any progress.

Looks like they are still working towards a solution. May I suggest, any person who stumbles onto this thread open similar request through their support form. Also, how are people getting around this problem currently?

@glensc
Copy link

glensc commented Aug 25, 2017

@powpow12 i just rebase locally and push -f

[~/scm/eventum/eventum (history-event)] ➔ git rebase master
First, rewinding head to replay your work on top of it...
Applying: emit history.add events when history entry is added
Applying: add unstructured event class; add example extension
Applying: add changelog entry
Using index info to reconstruct a base tree...
M       CHANGELOG.md
Falling back to patching base and 3-way merge...
Auto-merging CHANGELOG.md
Applying: add project id to event
[~/scm/eventum/eventum (history-event)↕] ➔ 

@Envek
Copy link

Envek commented Sep 13, 2017

Also, there is a special git-merge-changelog tool which may perform better than merge=union.

See #560 (comment) for details.

@23Skidoo
Copy link

We (the Haskell Cabal project) would also benefit from support for merge=union or git-merge-changelog, see haskell/cabal#5625.

@acaloiaro
Copy link

Adding an updated response from Github for 2019

  Hi, We do have an internal issue tracking this feature request, and I've
  added your comments there; however, I can't say for sure if or when it
  might be added to a GitHub Enterprise release. Please keep an eye on the
  [3]release notes to be notified when new versions are available, and the
  features that are included in each one.

  For now, users who prefer alternate merge methods will need to perform
  merges using their local Git clients.

  If you have any further comments or feedback, don't hesitate to let us
  know.

  Cheers, Rob

@emartynov
Copy link

Any update here?

@timotheecour
Copy link

timotheecour commented Apr 25, 2020

just sent out this to https://support.github.com/contact

Dear github, please add support for merge=union gitattributes.
All the context is here #487.

GitHub staff on 10 Oct 2015 16:03:13 +0200:
We've added a note to this suggestion on our internal Feature Request List.

but still hasn't been acted on

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

10 participants