diff options
author | Hugues Hiegel <hugues@hiegel.fr> | 2009-02-06 14:28:14 +0100 |
---|---|---|
committer | Hugues Hiegel <hugues@hiegel.fr> | 2009-02-06 14:28:14 +0100 |
commit | ea5435268132b2fe066b18bd41f200bb0c8fbfa4 (patch) | |
tree | 64e0a01dfa2c2356528da7943930e36c037d8226 /STLinux/stlinux_reset_tags.sh | |
parent | c0492db3dcb4d80f173da1504350ed9182652d88 (diff) |
[STLinux] generate spec file + reset git tags
Diffstat (limited to 'STLinux/stlinux_reset_tags.sh')
-rwxr-xr-x | STLinux/stlinux_reset_tags.sh | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/STLinux/stlinux_reset_tags.sh b/STLinux/stlinux_reset_tags.sh new file mode 100755 index 0000000..0952d6d --- /dev/null +++ b/STLinux/stlinux_reset_tags.sh @@ -0,0 +1,36 @@ +#!/bin/zsh + +FILE=$1 + +usage() +{ + cat << EOF +usage: $0:t <FILE.spec>" + Where FILE.spec is a .spec file with list of patches and of kernel releases + To generate this FILE.spec, you should take a look to stlinux_generate_spec_file.sh +EOF +} + +if [ $# -ne 1 -o ! -f $FILE ] +then + usage + exit 42 # Yes, 42. +fi + +local tag commit release + +for tag in $(grep -i "^# Kernel [0-9]\+ released here$" $FILE | sed 's/^# Kernel \([0-9]*\) released here$/\1/') +do + release=$( + grep -i "^# Kernel $tag released here$" $FILE -B1 |\ + head -n1 |\ + sed 's/^Patch\([0-9]*\): /\\[Patch \\#\1\\].* /' + ) + commit=$( + git-log --grep="$release" --pretty=oneline |\ + cut -c1-40 + ) + echo "#$tag -- $(git-log --grep="$release" | grep "$release")" + git-tag $tag $commit +done + |