From 51e56b9cca1ed9855bedf92c67bd27cbf69b56da43c34e68cc5e47ec4384c79e Mon Sep 17 00:00:00 2001 From: Bruce Rogers Date: Wed, 6 Nov 2019 23:32:51 +0000 Subject: [PATCH] Accepting request 746105 from home:bfrogers:branches:Virtualization Oops - left some private "Scribble" notes in update_git.sh - clean that up OBS-URL: https://build.opensuse.org/request/show/746105 OBS-URL: https://build.opensuse.org/package/show/Virtualization/qemu?expand=0&rev=506 --- update_git.sh | 20 -------------------- 1 file changed, 20 deletions(-) diff --git a/update_git.sh b/update_git.sh index 09c07aa4..21802bf6 100644 --- a/update_git.sh +++ b/update_git.sh @@ -8,26 +8,6 @@ # # (default is git2pkg) -# TODO NOTES: - -# after ensuring current status of local repo is clean, incl submodules, we checkout master+submodules, then also ensure they're clean, then checkout the commit or tag corresponding to latest / stable-release + submodules (but don't bother to verift that's clean) - so this is a detached HEAD for stable-release and IS master (almost certainly) for LATEST. WOW - is that what we need to be doing!?!?! At least it seems to be working for the cases I've seen!!!! -# initbundle operates from the current checked out state of the local superproject, to get the submodule ids - CORRECT!!!! -# the LATEST processing of cloning the local repo, clones master - but perhaps it doesn't matter? because it adds upstream as a remote and probably gets most things from there? INVESTIGATE!!!!!!!!!!!!!!!!!!!1 -# bundle2local checks out master in local repo to ensure we're off the frombundle branch (doesn't seem needed the way the script currently is). It fetches the bundle's head (FETCH_HEAD) REQUIRING that the base commit be present (which it seems to be. Then it creates the frombundle branch, with the current FETCH_HEAD (SAME AS IN BUNDLE, RIGHT?) -# The LATEST's rebase loop checks out the frombundle branch (with force), so we are now OFF of the "correct checkout" that happened at the beginning, it DELETES the GIT_BRANCH (so in this case it DIDN'T MATTER WHAT WAS THERE WHEN SCRIPT STARTED !!!!!!! WARNING !!!!!, branches off of the frombundle branch (w/checkout), then rebases that (which came from bundle) onto the current superproject, or submodule commit id. -# At this point, if the GIT_BRANCH rebased ok, it's ready for making a patchqueue, out of, if the rebase failed, it's time to manually fix that.!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!1 - -# LATEST processing implies updated upstream/master IS the right thing -# HOW do we protect against a bad bundle being created (we do have the build service's tracking of previous files - is that sufficient? -# initbundle - what does it need? Currently we take the default branch in local superproject for the superproject and submodule commit ids, so it needs to be right! (ie which ever branch it is (DECIDE!), make it the RIGHT ONE for this release. It takes the commits from the $GIT_BUNDLE branch of each of superproject and submodule repos, which are beyond above found commits. IT CERTIANLY SEEMS REASONABLE THAT WE WOULD HAVE THE $$GIT_BRANCH BRANCH BE THE DEFAULT AND CORRECT BUT HOW DO WE GUARANTEE THATS OK? GIVEN OUR REQS HERE QEMU_VERSION CAN BE GRABBED HERE IN LOCAL SUPERPROJECT RIGHT AWAY! -# bundle2local - what does it need? This checks out local master just to get off of frombundle (could have been $GIT_BRANCH as well) No other req's -# bundle2spec - what does it need? THIS SHOULD HAVE LATEST SPLIT OUT!!!! We allow this alone, so see what setup it alone needs - for this one particularly, we don't want to REQUIRE local repo. FOR NOW I ASSUME THE RIGHT THING IS CHECKED OUT! -# -# SEEMS WE SHOULD NOT,NOT,NOT require user to have previously updated, or set local repo a certain way, but for us to enforce it or actually do it -# TODO: confirm local repo present, correct remotes, correct local branches, somehow validate local branch content against remote, ... -# -# In both cases we DO require the $GIT_BRANCH to exist, and should confirm that the appropriate upstream basis commit is indeed part of that. In the LATEST case, we can treat master as a source for initial current upstream. - set -e source ./config.sh