1
0
mirror of https://review.coreboot.org/flashrom.git synced 2025-08-23 06:50:49 +02:00
Files
flashrom/util/git-hooks/install.sh
Stefan Tauner 9fbbf55ecb Convert flashrom to git
- Drop support for Subversion in the getrevision script and Makefile.
 - Refinement of getrevision to have a single function determining the
   new flashrom version string (based on git describe).
 - Add .gitignore and .gitattributes file (the latter to limit exports).
 - Restore modification dates of the exported files from the VCS.
 - Stop exporting VCS log dumps to CHANGELOG. This makes no sense.
 - Export VCS metadata needed by the Makefile to versioninfo.inc
 - Do not export the pre-"compiled" manpage. It can be generated like
   anything else from the code dump with versioninfo.inc
 - Add some initial client-side git hooks that get installed automatically
   on make runs:
   * pre-commit:
     - test for whitespace errors via git diff-index --check
   * commit-msg:
     - Use the up to date hook from gerrit to add Change-Id tags.
       Unlike the upstream hook, add them to fixup/squash changes too
       to allow for our staging process.
     - Test for duplicate sign-offs/acks.
   * When pushing to one of the upstream repositories check mandatory rules:
      - existing signoffs and acks in all new commits
      - no deletions of branches
      - no new branches other than versioned branches (e.g., 0.0.x)
      - no history rewriting of branches
 - Various other small refinements, bikesheddings and cosmetic changes to
   slow down progress of flashrom and humanity as a whole.

Original-Change-Id: I64eef21982cac0a0a7419bcd2c8a936672ae9cb2
Original-Reviewed-on: https://review.coreboot.org/19206
Original-Reviewed-by: Nico Huber <nico.h@gmx.de>
Original-Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>

Change-Id: I325edb7d9890c412a44ecacb5161268d3dbccc57
Signed-off-by: Stefan Tauner <stefan.tauner@gmx.at>
Signed-off-by: David Hendricks <dhendricks@fb.com>
Signed-off-by: Nico Huber <nico.h@gmx.de>
Reviewed-on: https://review.coreboot.org/21923
Acked-by: Stefan Tauner <stefan.tauner@gmx.at>
2017-10-12 03:16:10 +02:00

21 lines
699 B
Bash
Executable File

#!/bin/sh -e
root=$(git rev-parse --show-cdup 2>/dev/null) || \
{ echo "Not under git control. Cannot install git hooks." >&2 ; exit 0 ; }
dst="${root}"$(git rev-parse --git-path hooks/)
src=util/git-hooks/ # relative to root
hooks=$(cd "${root}${src}" && git ls-files -c | grep -Ev 'install.sh|wrapper.sh')
for h in $hooks; do
# Test if hook is not already installed, i.e. doesn't point at the wrapper
if [ ! "${dst}$h" -ef "${root}${src}wrapper.sh" ]; then
# preserve custom hooks if any
if [ -e "${dst}$h" ]; then
mv "${dst}$h" "${dst}$h.local"
fi
ln -s "$(git rev-parse --prefix $(git rev-parse --git-path hooks/) --show-cdup)${src}wrapper.sh" \
"${dst}$h"
fi
done