1
0
linux/debian/bin/diff-gencontrol

33 lines
764 B
Plaintext
Raw Normal View History

#!/bin/bash
set -euE
REF_BASE=${1:-master}
REPO=$(git rev-parse --show-toplevel)
COMMIT_BASE=$(git merge-base --fork-point "$REF_BASE")
COMMIT_NEW=$(git stash create)
TMP=$(mktemp -d)
trap "rm -rf '$TMP'" EXIT
function git {
command git -c advice.detachedHead=false -c init.defaultBranch=main -C "$TMP" "$@"
}
git init -q
git remote add origin "$REPO"
git fetch -q --depth 1 origin $COMMIT_BASE:base $COMMIT_NEW:new
git checkout -q base
echo "Running gencontrol on ${COMMIT_BASE}"
( cd "$TMP"; ./debian/bin/gencontrol.py )
git stash push -q --all
git checkout -q new
echo "Running gencontrol on uncommited changes"
( cd "$TMP"; ./debian/bin/gencontrol.py )
git stash push -q --all
# ^3 is the commit with untracked files
git diff stash@{1}^3 stash@{0}^3