mirror of
https://github.com/ViViDboarder/abuse-the-force.git
synced 2024-11-21 22:26:26 +00:00
37 lines
947 B
Bash
Executable File
37 lines
947 B
Bash
Executable File
#! /bin/bash
|
|
|
|
###############################
|
|
# Author: Ian (ViViDboarder)
|
|
# Description: Simple command to generate lists of
|
|
# changed files. Designed to work with AbuseTheForce
|
|
###############################
|
|
gitismerge () {
|
|
local sha=$1
|
|
msha=$(git rev-list --merges ${sha}...${sha}~1)
|
|
# If commit returned is the one passed it, it is a merge
|
|
[ -z "$msha" ] && return 1
|
|
return 0
|
|
}
|
|
|
|
if [ -z "$1" ]; then
|
|
|
|
echo "Usage:"
|
|
echo "git-changed commit [commit 2]"
|
|
echo ""
|
|
echo "If one commit is provided:"
|
|
echo " Return a list of all files changed in that commit"
|
|
echo ""
|
|
echo "If two commits are provided:"
|
|
echo " Return a list of all files changed between commits"
|
|
|
|
exit 0
|
|
fi
|
|
|
|
# If there is only one parameter, return the files changed in that commit
|
|
if [ -z "$2" ] && gitismerge $1; then
|
|
git diff-tree --no-commit-id --name-only $1
|
|
else
|
|
git diff --no-commit-id --name-only $1 $2
|
|
fi
|
|
|