* [PATCH] Use Cogito when possible in the "tutorial" test.
@ 2006-03-04 1:23 Pavel Roskin
0 siblings, 0 replies; only message in thread
From: Pavel Roskin @ 2006-03-04 1:23 UTC (permalink / raw)
To: git, Petr Baudis
In particular, use Cogito branch support. Document why git has to be
used in some places.
Signed-off-by: Pavel Roskin <proski@gnu.org>
---
Documentation/tutorial-script/script.sh | 29 +++++++++++++++++------------
1 files changed, 17 insertions(+), 12 deletions(-)
diff --git a/Documentation/tutorial-script/script.sh b/Documentation/tutorial-script/script.sh
index edcebda..4d6b732 100755
--- a/Documentation/tutorial-script/script.sh
+++ b/Documentation/tutorial-script/script.sh
@@ -1,8 +1,9 @@
#!/bin/bash
#
-# FIXME: This script has many GITisms. Some of them are unnecessary, while
-# some stem from missing Cogito features (especially no support for pushing
-# tags, and consequently no support for remotes/).
+# FIXME: This script has some GITisms. They stem from missing Cogito
+# features, such as exporting patches to mbox format, applying patches
+# from e-mail, merging multiple tags at once, verifying signed tags and
+# repacking the repository.
# This function is appended as "&& should_fail" to commands which should
@@ -34,7 +35,7 @@ cd $ALICE
tar xf $TOP/0001-alice.tar
cd rpn
-# Being a tidy girl, she places it under git
+# Being a tidy girl, she places it under Cogito
echo "Alice's first version" | cg-init
cg-tag -d "First ever version of RPN" rpn-0.1
@@ -108,8 +109,8 @@ cg-export ../rpn-0.3.tar.bz2
### Bob tells Alice of his changes, Alice prepares to get them.
cd $ALICE/rpn
-git checkout -b bob
-git branch
+cg-switch -r master bob
+cg-status -g
# Alice needs to register his remote branch
cg-branch-add bobswork $BOB/rpn
@@ -163,14 +164,16 @@ cg-commit -m "Add proper header file for
-m "Update dependencies in Makefile"
# Charlie emails the patch to Alice:
+# cg-mkpatch -d .. -r rpn-0.3..master
git format-patch -o .. --mbox --signoff -r rpn-0.3
- # Result is in $TOP/0014-charlie-email
+# Only git can create mbox formatted output
+# Compare the result to 0014-charlie-email
### Alice is busy meanwhile...
cd $ALICE/rpn
-git checkout master
+cg-switch master
patch -p1 -i $TOP/0015-alice-mod.patch
@@ -189,21 +192,23 @@ cg-push public
### Alice gets Charlie's fix, creates a new branch for his changes
cd $ALICE/rpn
-git checkout master
-git checkout -b charlie rpn-0.3
-git branch
+cg-switch -r rpn-0.3 charlie
+cg-status -g
+# Check what's inside the patch. There is no Cogito equivalent yet.
git apply --stat $TOP/0014-charlie-email
git apply --summary $TOP/0014-charlie-email
git apply --check $TOP/0014-charlie-email
# Everything looks OK
git applymbox $TOP/0014-charlie-email
+# This doesn't work well yet
+# cg-patch < $TOP/0014-charlie-email
### Alice integrates the changes in the branches for the next release
cd $ALICE/rpn
-git checkout master
+cg-switch master
# Alice tries "git merge" instead of "cg-merge" since she wanted to
# merge both branches at once, which "cg-merge" cannot do.
git merge "Integrate changes from Bob and Charlie" master bob charlie \
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2006-03-04 1:23 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-03-04 1:23 [PATCH] Use Cogito when possible in the "tutorial" test Pavel Roskin
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.