aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xgit-oldest-ancestor16
-rwxr-xr-xgit-todos20
2 files changed, 36 insertions, 0 deletions
diff --git a/git-oldest-ancestor b/git-oldest-ancestor
new file mode 100755
index 0000000..57db44d
--- /dev/null
+++ b/git-oldest-ancestor
@@ -0,0 +1,16 @@
+#!/bin/bash
+
+# git-oldest-ancestor
+#
+# Finds the branch point of the current HEAD.
+#
+# From lindes (https://stackoverflow.com/users/313756/lindes) on Stack Overflow
+# https://stackoverflow.com/questions/1527234/finding-a-branch-point-with-git/4991675#4991675
+# https://stackoverflow.com/questions/1527234/finding-a-branch-point-with-git/4991675#comment42897586_4991675
+
+diff \
+ --old-line-format='' \
+ --new-line-format='' \
+ <(git rev-list --first-parent "${1:-master}") \
+ <(git rev-list --first-parent "${2:-HEAD}") |
+ head -1
diff --git a/git-todos b/git-todos
new file mode 100755
index 0000000..8ab96eb
--- /dev/null
+++ b/git-todos
@@ -0,0 +1,20 @@
+#!/bin/sh
+
+# Show TODOs since base branch
+
+git diff --diff-filter=a -S'TODO' "$(git oldest-ancestor)"... |
+ egrep --after-context 1 '^\+.*\bTODO\b' |
+ sed 's/^+[[:space:]]*//'
+
+
+# Want:
+# - filename
+# - line number
+
+# Use git blame?
+
+# fgrep -A 1 -n TODO $(git diff --name-only $(git oldest-ancestor)... )
+# ^ not quite the same thing, as it will catch old TODOs in updated files
+
+# https://stackoverflow.com/questions/23298812/python-unified-diff-with-line-numbers-from-both-files
+# diff --unchanged-line-format=' %.2dn %L' --old-line-format="-%.2dn %L" --new-line-format="+%.2dn %L" <(git show @~:app/module/background/nativeMessageManager.js) app/module/background/nativeMessageManager.js