add git-make-p4-refs script to Porting
authorYuval Kogman <nothingmuch@woobling.org>
Fri, 5 Sep 2008 18:46:58 +0000 (21:46 +0300)
committerYuval Kogman <nothingmuch@woobling.org>
Mon, 12 Jan 2009 08:25:39 +0000 (10:25 +0200)
MANIFEST
Porting/git-make-p4-refs [new file with mode: 0644]

index 8a19e76..365fa16 100644 (file)
--- a/MANIFEST
+++ b/MANIFEST
@@ -3519,6 +3519,7 @@ Porting/fixCORE           Find and fix modules that generate warnings
 Porting/fixvars                Find undeclared variables with C compiler and fix em
 Porting/genlog         Generate formatted changelogs by querying p4d
 Porting/git-find-p4-change     Find the change for a p4 change number
+Porting/git-make-p4-refs       Output git refs for each p4 change number, suitable for appending to .git/packed-refs
 Porting/Glossary       Glossary of config.sh variables
 Porting/Maintainers    Program to pretty print info in Maintainers.pl
 Porting/Maintainers.pl Information about maintainers
diff --git a/Porting/git-make-p4-refs b/Porting/git-make-p4-refs
new file mode 100644 (file)
index 0000000..931abe7
--- /dev/null
@@ -0,0 +1,13 @@
+#!/bin/sh
+
+# this script creates a tag for every p4raw-id
+# the output can be appended to .git/packed-refs, but make sure to back up
+# first
+
+# then you can do:
+
+# git show perl@1234 where 1234 is a perforce change, and 'perl' is the p4
+# depot
+
+git log -z -F --grep='p4raw-id:' --pretty='format:%H %b' | \
+perl -0ne 'chomp; if ( @t = m{([a-f0-9]{40}).*?p4raw-id: //depot/(.*?\@\d+)}s ) { print "@t\n" }'