-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add rebase with merge commit merge style (#3844) #4052
Conversation
Signed-off-by: Julian Tölle <julian.toelle97@gmail.com>
Codecov Report
@@ Coverage Diff @@
## master #4052 +/- ##
==========================================
- Coverage 37.56% 37.55% -0.01%
==========================================
Files 321 322 +1
Lines 47206 47283 +77
==========================================
+ Hits 17731 17756 +25
- Misses 26929 26979 +50
- Partials 2546 2548 +2
Continue to review full report at Codecov.
|
I have created a seperate issue to track the error during rebase #4078. This PR is ready to be reviewed now. |
Any change this could be merged into master? This would be very useful to us. Thank you very much for the work! |
@InExtremaRes Currently I am waiting for the review process. You too can leave suggestions/improvements to the code. ;) Besides that you can try to convince some maintainers in the discord channel to review it. As the 1.5.0 Release has been cut off and is mostly done, there might be someone willing to do it. Edit: @maintainers How should i proceed with conflicting migrations? As there are always some new ones merged in the one created in the PR is always out of date with the numbering. Should I try to keep up or will you just bump the numbers once you are merging? |
@apricote I'd love to review/suggest/improve the code but I don't know Go. What is that discord channel you mentioned? |
@apricote you may find a maintainer that will resolve conflicts for you, however my personal approach is to only touch someones PR when they've asked for help resolving a conflict. My preference to start reviews is that all conflicts are resolved (so that I can trigger drone to build against the most recent commit in master). Like you said, the best way to get someones attention is to bring it up in the |
@InExtremaRes https://discord.gg/NsatcWJ is the discord server |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Commit
should be removed from all variables/constants
This seems like a nice feature. It would have been nice to use it a few times that i remember. How is this going? |
file conflicted. |
@apricote I was testing this branch in our server and I can notice a couple of issues:
Looking at the changes it seem like 2. is deliberated (example). Why is that the default behaviour? I think this does not align very well with the default of git, that always preserve the name of the branch. |
Before @InExtremaRes 's question resolved, don't merge. |
|
maybe @lafriks could know that. |
@apricote That's interesting. Well, when you rebase a branch (and For the latest I just can guest. I think is for safety: if the rebase/pull/merge/something fails the branch can just be discarded without touching the original one and, as I said, in the Rebase and Squash styles the name of that branch is not seen anymore. But just my guess, and as @lunny said maybe @lafriks knows better and can explain. |
There is another, small issue I didn't realize before. The author of the commit is set to the |
That is ok that message is not customizable and it is correct that Author for merge message should be user who is doing PR merge. So should probably be merge without commit and then separate commit with author if that is possible with merge style. |
I think I understand the rationales behind, but I would prefer that even if the name of the branch is prepended the commit message would not, since it is clearer in the log what branch was merged. Most of the time the usefulness of this merge style, as opposed to classic rebase style, is that it's straightforward to see what commits are coming from specific branch and are (probably) related or part of the same feature. @apricote Is it possible to keep the merge commit with the name of the original branch and the author as the user doing the merge? BTW, thanks for this feature, it is working pretty well until now. |
Build failure seems to be unrelated:
@InExtremaRes I added the option to set a custom commit title and message. Also the author of the merge commit is now the user doing the merge. The default merge commit message is now the same as with a usual merge:
|
Thank you @apricote. I'll be happy to keep testing and report back later. Since I already executed this when the migration version was 74, is there anything I need to do? |
@InExtremaRes If you keep using this branch and eventually switch back to the master, you will skip the Migration v74, this migration adds a column (I think) and skipping it will result in a unexpected/invalid database schema. The migration introduced in this PR is idempotent and can safely be re-run. You will want to change the current database version to On the next server start, this will retrigger all migrations > 73 and your database should be in the desired state. |
This PR adds the
Rebase and Merge (--no-ff)
merge style as requested in #3844.Known Bugs:
As with theTracked in Error while rebasing PR with conflicts #4078Rebase and Merge
style, if the rebase can not be done cleanly, the merge will result in a500
error page