X-Git-Url: https://git.openafs.org/?p=openafs-wiki.git;a=blobdiff_plain;f=AFSLore%2FGitTools.mdwn;h=85c7c4971a0b270d294392242f3d0ce3edc7f5c2;hp=0fe24bc2710267cef4ac0ade4bbdf75049504426;hb=0be75492bf2d5543f44904d19dba30ad454fb92b;hpb=991a8c54e634952ab0c630ff2424ddfecc2b51be
diff --git a/AFSLore/GitTools.mdwn b/AFSLore/GitTools.mdwn
index 0fe24bc..85c7c49 100644
--- a/AFSLore/GitTools.mdwn
+++ b/AFSLore/GitTools.mdwn
@@ -1,40 +1,65 @@
-# Tooling required for git
+# Git to do list
-## Release building script
+This was originally just a list of the tools that needed to be written before we could make the switch to git. I'm now turning it into a more general to do list
-Required for our first release (not switchover)
+## Before
-- Take SHA1 of tag point
-- Need to tag tree
-- But, need to have option to run without tagging
-- Need to preserve difference between doc and source tree (generate tarballs for both)
-- Generate diff between two tags
-- Generates changelog from complete commit log on every patch
+The following are the tasks which needed to be completed before (or at the same time as) the switch being thrown.
+
+### Repository Conversion
-## cvs commit emails
+- Make IBM the author of the initial revision
+- Add a line to the comments of branch commits, indicating the SHA1 of the corresponding HEAD commit (this requires more reordering logic, so that the HEAD commit always lands first)
+- Tidy up the remaining FIXES that have no associated bug IDs
+- Remove the branch signifier from the delta reference (as it has no significance)
+- Reach a decision about tag and branch name formats (underscores or dots) and implement it
-Required for switchover
+### Gerrit
+
+- Install gerrit on the Stanford machine
+- Make arrangements for database backups
+- Make arrangements for Jetty starting at machine boot
+- Stop gerrit from forging email
+
+### cvs commit emails
We need to preserve the existing cvs commits mailing list. A couple of ways of doing this have been proposed. Either get gerrit to CC the commit list with every "Change submitted" email that it sends, or set up a clone of the gerrit repository which has a commit hook that sends email. That clone would then be pushed to whenever gerrit makes a change, and would handle the sending of emails (and be the repo that end users pull from)
-## deltas
+### Delta creation web page
-Initial Hack required for switchover
+We need a mechanism for keeping the delta name information up to date, as gerrit won't be (directly) tracking it. The proposal is to have a protected web page which takes a git SHA1, and a delta name, and creates the necessary reference to associate the two together.
-Initial hack: Build a web page which takes the SHA1 of the commit, and the delta name to be applied, and runs git update-refs on the server.
+### Pullup script
-Ideal solution: Add support to gerrit to prompt for the delta name as part of the submit action.
+Write a script which takes the master delta name, the branch target, and cherrypicks the change to the branch. This should bypass gerrit if the cherrypick succeeds (This should probably use a different SSH key than the one normally used for head commits). For commits which require manual changes, there should be a choice between directly applying the massaged change to the branch, and submitting it via gerrit.
-## persistent repository clone in afs
+## Shortly after
-Not required for the switch
+These items will be required shortly after we complete the switchover
-Build a persistent clone & checkout of the master in AFS. Get gerrit and/or cron to keep this constantly up to date.
+### Release Building Script
-## pullups
+(we can't release with out it!)
-Required for the switch
+A script is required to produce the basics of a release. It should do something like the following:
-Write a script which takes the master delta name, the branch target, and cherrypicks the change to the branch. This should bypass gerrit if the cherrypick succeeds (This should probably use a different SSH key than the one normally used for head commits). For commits which require manual changes, there should be a choice between directly applying the massaged change to the branch, and submitting it via gerrit.
+- Take SHA1 of tag point
+- Need to tag tree
+- But, need to have option to run without tagging
+- Need to preserve difference between doc and source tree (generate tarballs for both)
+- Generate diff between two tags
+- Generates changelog from complete commit log on every patch
+
+## After
+
+These are things that we believe it would be nice to have, but that we're not going to delay flipping the switch for ...
+
+### Gerrit changes
+
+- Support for naming deltas within Gerrit, as part of the 'submit' action.
+
+### persistent repository clone in afs
+
+Build a persistent clone & checkout of the master in AFS. Get gerrit and/or cron to keep this constantly up to date.
-- [[SimonWilkinson]] - 06 Jun 2009