[Fwd: document CVS vs. git tags]

Kevin Smith yarcs at qualitycode.com
Tue Jul 12 07:13:19 CDT 2005


I'm not really familiar with the third use of cvs tags claimed below. 
Would some statement similar to this be helpful in the mercurial docs 
and/or wiki?

Kevin

-------- Original Message --------
Subject: [PATCH] document CVS vs. git tags
Date: Tue, 12 Jul 2005 09:29:33 +0200
From: Matthias Urlichs <smurf at smurf.noris.de>
To: torvalds at osdl.org, git at vger.kernel.org

CVS uses tags for lots of things.
Git doesn't.
Document that, so people may understand.

diff --git a/Documentation/cvs-migration.txt 
b/Documentation/cvs-migration.txt
--- a/Documentation/cvs-migration.txt
+++ b/Documentation/cvs-migration.txt
@@ -230,3 +230,33 @@ that contain this changed "if" statement
  [ Side note.  This option is called "--pickaxe-all" because -S
    option is internally called "pickaxe", a tool for software
    archaeologists.]
+
+
+
+Tagging, Branching and Merging
+------------------------------
+
+In CVS, you need tags for three different (and conflicting) use cases:
+
+* Mark the state of you repository at a given point in time.
+
+  "This is version 0.2."
+
+* Name a branch, i.e. semi-separate line of development.
+
+  "I'm now working on what's going to be version 0.3."
+
+* Remember where you last merged from so that you won't mess up your
+  changes later.
+
+  "Did we integrate that important bugfix from 0.2.1 into 0.3 yet?"
+
+
+Git has different features for each of these uses.
+
+* You mark the current (actually, last-checked-in) state with "git tag".
+
+* You start a new branch with "git checkout -b <name>".
+
+* Git keeps track of what-got-merged-to-where internally.
+
-


More information about the Mercurial mailing list