Mercurial > hgsubversion
annotate tools/converttags.sh @ 430:2851b81c65ce
maps: make sure AuthorMaps don't overwrite themselves, fix overriding
Author maps for the Python repo got truncated because of the author map stupidly
writing upon itself. This patch implements a better and faster scenario, where
entries will only be written to the saved author map if they're not coming from that
file. They're also now streamed into the file directly, instead of having to re-open
the file on every entry, and formatting is preserved.
author | Dirkjan Ochtman <dirkjan@ochtman.nl> |
---|---|
date | Mon, 15 Jun 2009 16:09:27 +0200 |
parents | 77892f67b1cd |
children |
rev | line source |
---|---|
282
77892f67b1cd
tools: bash script to convert tags as a stopgap until the tags refactor
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
1 #!/bin/bash |
77892f67b1cd
tools: bash script to convert tags as a stopgap until the tags refactor
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
2 # This shell script exists to convert hgsubversion tags to real hg tags. |
77892f67b1cd
tools: bash script to convert tags as a stopgap until the tags refactor
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
3 # This will go away once hgsubversion's tags handling uses .hgtags directly. |
77892f67b1cd
tools: bash script to convert tags as a stopgap until the tags refactor
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
4 hg tags | sed -E 's/([a-zA-Z0-9./_-]*) [^:]*:([a-f0-9]*)/\2 \1/' | grep -v ' tip$' > .hgtags |
77892f67b1cd
tools: bash script to convert tags as a stopgap until the tags refactor
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
5 cat .hgtags | sed "$( |
77892f67b1cd
tools: bash script to convert tags as a stopgap until the tags refactor
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
6 for x in `cat .hgtags| cut -f 1 -d ' '` ;do |
77892f67b1cd
tools: bash script to convert tags as a stopgap until the tags refactor
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
7 echo -n "s/$x/" ; hg log --template '{node}' -r $x ; echo -n '/g; ' |
77892f67b1cd
tools: bash script to convert tags as a stopgap until the tags refactor
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
8 done)" > .hgtags.new |
77892f67b1cd
tools: bash script to convert tags as a stopgap until the tags refactor
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
9 mv .hgtags.new .hgtags |