Comments (9)
Yes, I don't think self-merging is bad in itself but we can try and avoid it where possible. Also I have now squashed the last commits
from latspec.jl.
The following ways seem to be the best:
- Merging one PR (with/out multiple commits):
- Website/Mobile app: Squash and merge
- CLI/GUI: Squash and merge
- Merging multiple PRs at once:
- Website/Mobile app: Don't do it
- CLI/GUI: Follow this guide and squash/merge the new branch with all PRs to master
from latspec.jl.
I've cleaned up the full commit history now following this (guide)[https://blog.nona.digital/cleaning-up-commit-history-with-git-rebase/amp/] and tried to get some structure into our commit-naming scheme.
My suggestion would be to stick to the following conventions for commits:
Add:
orFix:
for direct pushes to master- optional: more infos listed with
+
and*
markers
- optional: more infos listed with
PR:
for usual Pull requests that are merged- PR reference in parantheses
- squashed commits listed with
+
marker
CompatHelper: Added new compat entry/entries
for merges from CompatHelper pull requests- All PR references in parantheses
- State changed
Project.toml
- Added Packages listed at
* Package 'Packagename' v'versionnumber'
from latspec.jl.
I am not fully sure I understand the problem you are experiencing. We could try to rebase and squash commits before merging any pull requests so that every pull request is linked to a single commit in the correct chronological order. I am using GitKraken which provides a nice GUI for this.
from latspec.jl.
Yes I think too that rebase/squash is the way to go (also since with rebase one could combine multiple PRs if needed).
Also this is no problem to do at the PC but the GitHub-Smartphone App provides only three possibilities to merge:
- Simple merge
- Squash and merge
- Rebase and merge
So far I've tried the first (CompatHelper PR #1) and the third (for #4) and the merges were a bit messy.
So basically I just want to figure out if there is a possibility to have nice merges using the Smartphone app 😉
from latspec.jl.
Ah, I did not think about the mobile app. I could still squash the latest three commits of #4 on master although I see why it is preferable to do this before merging.
Edit: Also I think we should try to continue not merging our own pull requests. This should make for a good code review workflow.
from latspec.jl.
Re squashing: this would be nice of you thanks.
Re self-merging: makes sense. If there is something very urgent to be added immediately we can just push to master. Otherwise file a PR and wait for the other(s) to approve and merge.
from latspec.jl.
When merging #7 through the Website I encountered the same issue that you had. After merging the pull request both your commit and a merge commit showed up in the history. I am pretty sure that there is a better way of doing this than manually squashing the commits afterwards.
Edit. I had the same issue as you when trying to merge multiple CompatHelper pull requests. It seems the proper way of doing this is to first resolve the conflicts and then to squash&merge.
from latspec.jl.
Great. Let's keep this issue open for now until I manage to submit commits/PR using this convention. ;) It seems that the best way to deal with multiple ComaptHelper PRs is to create a combined one from scratch. This is probably more straightforward than merging multiple PRs and then squashing them.
from latspec.jl.
Related Issues (5)
- [Discussion] Documentation-Issues HOT 11
- Logo HOT 2
- Plots dependency HOT 4
- Where to go next HOT 6
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from latspec.jl.