Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(626)

Unified Diff: man/src/git-hyper-blame.txt

Issue 1559943003: Added git hyper-blame, a tool that skips unwanted commits in git blame. (Closed) Base URL: https://chromium.googlesource.com/chromium/tools/depot_tools.git@master
Patch Set: Respond to review. Created 4 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « man/src/_git-hyper-blame_desc.helper.txt ('k') | man/src/git-hyper-blame.demo.1.sh » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: man/src/git-hyper-blame.txt
diff --git a/man/src/git-hyper-blame.txt b/man/src/git-hyper-blame.txt
new file mode 100644
index 0000000000000000000000000000000000000000..8943c3935b7e9d288d0d0c70abe0cd265705ff36
--- /dev/null
+++ b/man/src/git-hyper-blame.txt
@@ -0,0 +1,72 @@
+git-hyper-blame(1)
+==================
+
+NAME
+----
+git-hyper-blame -
+include::_git-hyper-blame_desc.helper.txt[]
+
+SYNOPSIS
+--------
+[verse]
+'git hyper-blame' [-i <rev> [-i <rev> ...]] [<rev>] [--] <file>
+
+DESCRIPTION
+-----------
+
+`git hyper-blame` is like `git blame` but it can ignore or "look through" a
+given set of commits, to find the real culprit.
+
+This is useful if you have a commit that makes sweeping changes that are
+unlikely to be what you are looking for in a blame, such as mass reformatting or
+renaming. By adding these commits to the hyper-blame ignore list, `git
+hyper-blame` will look past these commits to find the previous commit that
+touched a given line.
+
+Follows the normal `blame` syntax: annotates `<file>` with the revision that
+last modified each line. Optional `<rev>` specifies the revision of `<file>` to
+start from.
+
+OPTIONS
+-------
+
+-i <rev>::
+ A revision to ignore. Can be specified as many times as needed.
+
+EXAMPLE
+-------
+
+Let's run `git blame` on a file:
+
+demo:1[]
+
+Notice that almost the entire file has been blamed on a formatting change? You
+aren't interested in the uppercasing of the file. You want to know who
+wrote/modified those lines in the first place. Just tell `hyper-blame` to ignore
+that commit:
+
+demo:2[]
+
+`hyper-blame` places a `*` next to any line where it has skipped over an ignored
+commit, so you know that the line in question has been changed (by an ignored
+commit) since the given person wrote it.
+
+BUGS
+----
+
+- When a commit is ignored, hyper-blame currently just blames the same line in
+ the previous version of the file. This can be wildly inaccurate if the ignored
+ commit adds or removes lines, resulting in a completely wrong commit being
+ blamed.
+- There is currently no way to pass the ignore list as a file.
+- It should be possible for a git repository to configure an automatic list of
+ commits to ignore (like `.gitignore`), so that project owners can maintain a
+ list of "big change" commits that are ignored by hyper-blame by default.
+
+SEE ALSO
+--------
+linkgit:git-blame[1]
+
+include::_footer.txt[]
+
+// vim: ft=asciidoc:
« no previous file with comments | « man/src/_git-hyper-blame_desc.helper.txt ('k') | man/src/git-hyper-blame.demo.1.sh » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698