diff options
Diffstat (limited to 'bin/git-blame-from-line-number')
-rwxr-xr-x | bin/git-blame-from-line-number | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/bin/git-blame-from-line-number b/bin/git-blame-from-line-number new file mode 100755 index 0000000..dbe1970 --- /dev/null +++ b/bin/git-blame-from-line-number @@ -0,0 +1,23 @@ +#!/bin/sh + +usage() { + echo "usage: $0 <filename> <lineno>" + exit 1 +} + +filename="$1" + +[ -z "${filename}" ] && usage + +lineno="$2" + +[ -z "${lineno}" ] && usage + +line=$(git blame -L "${lineno}","${lineno}" "${filename}") +sha=$(echo $line | awk '{print $1}') + +if [[ "${sha}" == "00000000" ]]; then + echo "${line}" +else + git show "${sha}" +fi |