-
Notifications
You must be signed in to change notification settings - Fork 3.1k
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
How should master relate to dev after drop #3153
Comments
I'd advocate for simply making |
We should probably just backed matter into dev and continue from there
…On Wed, Jun 10, 2020, 20:27 Nathaniel Wesley Filardo < ***@***.***> wrote:
I'd advocate for simply making master point to particular points along a
single lineage, of which dev is the head. We should never merge to master
in the future.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<#3153 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AALQLTLROPCCG6IMPDVT6X3RWAQFFANCNFSM4N22J3NQ>
.
|
Expanding my previous comment: and this means, necessarily, that (ETA: The most recent assignment of |
My suggestion is a slight variation on @nwf 's.
We rarely rollback commits to With our current drop process, I can see no advantage in having I think that we need @marcelstoer and @HHHartmann's views (at a minimum) before we can be quorate on this. |
I think that I was typing on my phone (with auto-correct). The git model that I am used to has In nodemcu's case, there is only a single dev branch that should always be ahead of If we have commits on master that are not on dev, then I think that we should merge I'm never in favor of changing a branch name to be on a different branch. |
Sorry Terry, I don't follow. I don't understand yet what the problem is. AFAICS anything that goes to dev has always been pulled into master. We ensure that by merging the tip of dev into master every time we "release". The only time I remember we "lost" commits (but not software changes) is with the penultimate drop on Sep 7, 2019. By accident you chose to 'squash and merge' #2886 rather than a regular merge. From your examples I only checked for "Lua 5.1 to 5.3 realignment phase 1" i.e. e7c29fe. In the blue title box GitHub confirms that it's on master and included in the most recent release tag. |
@marcelstoer the questions:
are entirely different. You seem to be saying: I can't think of a reason why Q2 could happen, therefore the answer to Q1 is "no". Please go back to my original post. The git diff lists off 551 files that are different between the two commits when the difference should be zero. Just going through the git logs, I have identified 4 large PRs that have somehow how not got integrated into Once we have agreement on that, then working out the "why"s and how to avoid a repeat of this is the next step. |
I did - at first only with one of your four examples. It was integrated into master. If I diff master and dev now I only see the expected outcome: RC and SQLite3 are gone and |
@pjsg, we have a lot of changes in |
@marcelstoer, I deleted the two local copies of these branches and refetched them from the NodeMCU repo. From what you say something has gone wrong with this process on my end. Let me do some more spot checks, and I will then close this issue, if it is my cock up. |
@marcelstoer @TerryE Something strange is going on here. When I pull my local clean dev branch of nodemcu/nodemcu-firmware from origin I get merges and merge conflicts. In my (limited) understanding of git this should not happen. There are also lots of unpushed commits (from all sorts of people, so not mine, as I also never check in to that repo) So second one having problems here. Master branch seems not to have these problems though. |
@marcelstoer rebased For any of your local branches that stemmed from |
Oh, FWIW, something I wish |
I don't know what has happened, but I've just repeated exactly the same process: delete my local copies of dev and master, then refetch form the nodemcu repo. The git diff now yields 0 file differences rather than 551 files different. Whatever was going wrong, or I was doing wrong seems to have fixed itself. Maybe this just proves that I should stick to Lua internals and modules and leave git to the experts. Sorry for the inconvenience Folks. 😢 💩 Back to the error handling PR. |
Indeed, I was open about it but in hindsight it probably was a total mind fart. It was really long overdue and our Git history is a lot cleaner now but it maybe wasn't worth it.
Neither did I. Very sorry about it. I wish GitHub gave us a "Rebase" button for the PRs like GitLab does. We wouldn't have to bother the PR authors with rebasing their branches onto |
Tried marcels suggestion in #3153 (comment) on my clean nodemcu/nodemcu-firmware dev branch and it worked. |
Retraction warning
This was a cock-up on my part so please ignore.
In #3078 we noticed that the naming of telnet files in
master
anddev
were out of sync. After initial investigation, my TL;DR conclusion is that, for whatever reason, there is steady and possibly significant number of commits to 'dev' that are missing being pulled intomaster
.I believe that the root of the issue is that pull from
dev
intomaster
is based on a maturity level which triggers thenext_release
tag, and the implicit assumption here is that anydev
commits that are notnext_release
are in effect implicitly taggednext-but_one_release
and will get promoted tonext_release
after the master drop and so alldev
commits will evenutally migrate tomaster
.I am now sure that this isn't always happening. As a result the overall software configuration in
master
is one that has never been really tested indev
, and there is a possibility that it will contain fatal bugs. I think that we need to get a better handle on whether is risk is real or even whether it's not a risk because it is a failure that has happened.A good basis of comparison is the output of
git diff --stat master 3.0-master_20200610
and tracking down the missing commits that account for these discrepancies. However IMO, the only differences betweenmaster
and thedev
tag3.0-master_20190907
should be for those few commits that we've held back until this release.The major ones that seem I've found that has been omitted are:
These 4 account for some 90% of the discrepancies, so there are others that we've missed, and in some cases the same file has been updated by two or more commits but one has been omitted, so just applying the missed commit might not work correctly.
So my conclusion is the master will no work properly.
The text was updated successfully, but these errors were encountered: