git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH 2/2] Add feature release instructions to gitworkflows man page

From
Rrocketraman@fastmail.fm <rocketraman@fastmail.fm>
Date
Mar 30, 2009, 05:35 UTC
Message-ID
<1238391319-4953-2-git-send-email-rocketraman@fastmail.fm>
In-Reply-To
<1238391319-4953-1-git-send-email-rocketraman@fastmail.fm>
From: Raman Gupta <raman@rocketraman.com>

Based on a mailing list discussion, add a description of the workflow, and associated commands, for creating a feature release.

Signed-off-by: Raman Gupta <raman@rocketraman.com>
---
 Documentation/gitworkflows.txt |   73 ++++++++++++++++++++++++++++++++++++++++
 1 files changed, 73 insertions(+), 0 deletions(-)
diff --git a/Documentation/gitworkflows.txt b/Documentation/gitworkflows.txt
index 2b021e3..6a31d7b 100644
--- a/Documentation/gitworkflows.txt
+++ b/Documentation/gitworkflows.txt
@@ -348,6 +348,79 @@ in patches to figure out the merge base.  See linkgit:git-am[1] for
 other options.
 
 
+RELEASE WORKFLOW
+----------------
+
+The maintainer may use the following release workflow:
+
+He first tags the tip of 'master' with a release tag, then he updates
+the 'maint' branch to the current tip of 'master' for managing future
+maintenance fixes on the current release, and lastly he optionally
+rebuilds 'next' from the tip of 'master'.
+
+
+Release Tagging
+~~~~~~~~~~~~~~~
+
+The new feature release is tagged on 'master' with a tag matching
+vX.Y.Z, where X.Y.Z is the new feature release version.
+
+.Release tagging
+[caption="Recipe: "]
+==========================================
+`git tag -s -m "GIT X.Y.Z" vX.Y.Z master`
+==========================================
+
+
+Maintenance branch update
+~~~~~~~~~~~~~~~~~~~~~~~~~
+
+The current maintenance branch is optionally copied to another branch
+named with the older release version number to allow for further
+maintenance releases on the older codebase. If the current tip of
+maint corresponds to an older release tag, then creating the maint
+branch for the older codebase can also be done later if and when it
+is required.
+
+.Copy maint
+[caption="Recipe: "]
+=====================================
+`git branch maint-X.Y.(Z-1) maint`
+=====================================
+
+'maint' is now updated to the new release code so that maintenance
+fixes can be merged for the current version.
+
+.Update maint to new release
+[caption="Recipe: "]
+=====================================
+* `git branch -f maint master`
+=====================================
+
+This creates 'maint' from 'master', while preserving the 'maint'
+reflog.
+
+
+Update next branch
+~~~~~~~~~~~~~~~~~~
+
+The 'next' branch may be rewound and rebuilt from the tip of 'master'
+using the surviving topics on 'next'.
+
+This step is optional. If it is done by the maintainer, then a public
+announcement will be made indicating that 'next' was rewound and
+rebuilt.
+
+.Update maint to new release
+[caption="Recipe: "]
+=====================================
+* `git branch -f next master`
+* `git merge ai/topic_in_next1`
+* `git merge ai/topic_in_next2`
+* ...
+=====================================
+
+
 SEE ALSO
 --------
 linkgit:gittutorial[7],
-- 
1.6.2
Previous: rocketraman@fastmail.fmNext: Junio C Hamano
Message 2 of 9 in “Add feature release instructions to MaintNotes addendum”
  1. 1/2 Add feature release instructions to MaintNotes addendumrocketraman@fastmail.fm, Mar 30, 2009
  2. 2/2 Add feature release instructions to gitworkflows man pagerocketraman@fastmail.fm, Mar 30, 2009
  3. Junio C HamanoMar 30, 2009
  4. Raman GuptaMar 30, 2009
  5. Junio C HamanoMar 30, 2009
  6. Raman GuptaMar 30, 2009
  7. Junio C HamanoApr 1, 2009
  8. Junio C HamanoMar 30, 2009
  9. Raman GuptaMar 30, 2009

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.