Mercurial > hg > mercurial-crew-with-dirclash
annotate contrib/git-viz/hg-viz @ 523:003df62ae39f
[PATCH] Force "hg clone" to always create a new directory
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
[PATCH] Force "hg clone" to always create a new directory
From: Bryan O'Sullivan <bos@serpentine.com>
I just screwed myself by typing "hg clone foo" without specifying a
destination directory, and after I was done mopping up the mess,
concluded that this is a dangerous mode of operation that has no
practical value.
I've thus modified the clone command so that it always creates a
destination directory. If none is specified, the destination is taken
as the basename of the source.
hg clone foo
-> error, because foo already exists
hg clone http://www.selenic.com/hg
-> new repo, named hg
hg clone ../bar
-> new repo, named bar
manifest hash: f21ed8f805a60c1326d99220772e1574b0870d6c
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)
iD8DBQFCwxsIywK+sNU5EO8RAgooAKC3IL6vKyADb9s2qqqi4GMw2Z7asACbBtE/
TvPgwGtIiB2GC+N+V7r1VpI=
=uTcK
-----END PGP SIGNATURE-----
author | mpm@selenic.com |
---|---|
date | Wed, 29 Jun 2005 14:04:56 -0800 |
parents | d8abb687d501 |
children |
rev | line source |
---|---|
406
d8abb687d501
[PATCH] Using monotone-viz/git-viz with mercurial
mpm@selenic.com
parents:
diff
changeset
|
1 #!/bin/sh |
d8abb687d501
[PATCH] Using monotone-viz/git-viz with mercurial
mpm@selenic.com
parents:
diff
changeset
|
2 |
d8abb687d501
[PATCH] Using monotone-viz/git-viz with mercurial
mpm@selenic.com
parents:
diff
changeset
|
3 set -e |
d8abb687d501
[PATCH] Using monotone-viz/git-viz with mercurial
mpm@selenic.com
parents:
diff
changeset
|
4 |
d8abb687d501
[PATCH] Using monotone-viz/git-viz with mercurial
mpm@selenic.com
parents:
diff
changeset
|
5 if test x"$1" != x ; then |
d8abb687d501
[PATCH] Using monotone-viz/git-viz with mercurial
mpm@selenic.com
parents:
diff
changeset
|
6 cd $1 |
d8abb687d501
[PATCH] Using monotone-viz/git-viz with mercurial
mpm@selenic.com
parents:
diff
changeset
|
7 fi |
d8abb687d501
[PATCH] Using monotone-viz/git-viz with mercurial
mpm@selenic.com
parents:
diff
changeset
|
8 |
d8abb687d501
[PATCH] Using monotone-viz/git-viz with mercurial
mpm@selenic.com
parents:
diff
changeset
|
9 if [ ! -d ".hg" ]; then |
d8abb687d501
[PATCH] Using monotone-viz/git-viz with mercurial
mpm@selenic.com
parents:
diff
changeset
|
10 echo "${1:-.} is not a mercurial repository" 1>&2 |
d8abb687d501
[PATCH] Using monotone-viz/git-viz with mercurial
mpm@selenic.com
parents:
diff
changeset
|
11 echo "Aborting" 1>&2 |
d8abb687d501
[PATCH] Using monotone-viz/git-viz with mercurial
mpm@selenic.com
parents:
diff
changeset
|
12 exit 1 |
d8abb687d501
[PATCH] Using monotone-viz/git-viz with mercurial
mpm@selenic.com
parents:
diff
changeset
|
13 fi |
d8abb687d501
[PATCH] Using monotone-viz/git-viz with mercurial
mpm@selenic.com
parents:
diff
changeset
|
14 if [ ! -d ".git" ]; then |
d8abb687d501
[PATCH] Using monotone-viz/git-viz with mercurial
mpm@selenic.com
parents:
diff
changeset
|
15 mkdir -v ".git" |
d8abb687d501
[PATCH] Using monotone-viz/git-viz with mercurial
mpm@selenic.com
parents:
diff
changeset
|
16 fi |
d8abb687d501
[PATCH] Using monotone-viz/git-viz with mercurial
mpm@selenic.com
parents:
diff
changeset
|
17 if [ -e ".git/HEAD" ]; then |
d8abb687d501
[PATCH] Using monotone-viz/git-viz with mercurial
mpm@selenic.com
parents:
diff
changeset
|
18 if [ ! -e ".git/HEAD.hg-viz-save" ]; then |
d8abb687d501
[PATCH] Using monotone-viz/git-viz with mercurial
mpm@selenic.com
parents:
diff
changeset
|
19 mv -v ".git/HEAD" ".git/HEAD.hg-viz-save" |
d8abb687d501
[PATCH] Using monotone-viz/git-viz with mercurial
mpm@selenic.com
parents:
diff
changeset
|
20 else |
d8abb687d501
[PATCH] Using monotone-viz/git-viz with mercurial
mpm@selenic.com
parents:
diff
changeset
|
21 rm -vf ".git/HEAD" |
d8abb687d501
[PATCH] Using monotone-viz/git-viz with mercurial
mpm@selenic.com
parents:
diff
changeset
|
22 fi |
d8abb687d501
[PATCH] Using monotone-viz/git-viz with mercurial
mpm@selenic.com
parents:
diff
changeset
|
23 fi |
d8abb687d501
[PATCH] Using monotone-viz/git-viz with mercurial
mpm@selenic.com
parents:
diff
changeset
|
24 hg history | head -1 | awk -F: '{print $3}' > .git/HEAD |
d8abb687d501
[PATCH] Using monotone-viz/git-viz with mercurial
mpm@selenic.com
parents:
diff
changeset
|
25 git-viz |
d8abb687d501
[PATCH] Using monotone-viz/git-viz with mercurial
mpm@selenic.com
parents:
diff
changeset
|
26 |