git-commit-vandalism/Documentation
Junio C Hamano d24bba8008 git-pickaxe -M: blame line movements within a file.
This makes pickaxe more intelligent than the classic blame.

A typical example is a change that moves one static C function
from lower part of the file to upper part of the same file,
because you added a new caller in the middle.

The versions in the parent and the child would look like this:

        parent            child

        A                 static foo() {
        B                 ...
        C                 }
        D                 A
        E                 B
        F                 C
        G                 D
        static foo() {    ... call foo();
        ...               E
        }                 F
        H                 G
                          H

With the classic blame algorithm, we can blame lines A B C D E F
G and H to the parent.  The child is guilty of introducing the
line "... call foo();", and the blame is placed on the child.
However, the classic blame algorithm fails to notice that the
implementation of foo() at the top of the file is not new, and
moved from the lower part of the parent.

This commit introduces detection of such line movements, and
correctly blames the lines that were simply moved in the file to
the parent.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-10-20 00:27:05 -07:00
..
howto Add Documentation/howto/setup-git-server-over-http.txt 2006-08-10 15:07:11 -07:00
technical Documentation/technical/racy-git.txt 2006-08-15 21:32:54 -07:00
.gitignore Don't include ../README in git.txt - make a local copy 2006-01-24 23:16:31 -08:00
asciidoc.conf escape tilde in Documentation/git-rev-parse.txt 2006-10-03 01:04:19 -07:00
build-docdep.perl Clean build annoyance. 2005-11-08 08:58:52 -08:00
callouts.xsl Properly render asciidoc "callouts" in git man pages. 2006-04-28 14:31:51 -07:00
config.txt http/ftp: optionally ask curl to not use EPSV command 2006-09-28 19:02:46 -07:00
core-tutorial.txt Documentation: Fix broken links 2006-09-13 23:39:33 -07:00
cvs-migration.txt Documentation: Fix broken links 2006-09-13 23:39:33 -07:00
diff-format.txt Documentation: diff -c/--cc 2006-01-28 02:26:30 -08:00
diff-options.txt diff --numstat 2006-10-13 21:37:10 -07:00
diffcore.txt Fix recent documentation format breakage. 2005-10-29 00:50:42 -07:00
everyday.txt Some doc typo fixes 2006-06-07 11:49:35 -07:00
fetch-options.txt git-fetch --upload-pack: disambiguate. 2006-01-26 18:11:06 -08:00
git-add.txt Document that "git add" only adds non-ignored files. 2006-05-20 18:22:11 -07:00
git-am.txt war on whitespaces: documentation. 2006-03-02 00:52:59 -08:00
git-annotate.txt Add git-annotate(1) and git-blame(1) 2006-04-18 12:06:55 -07:00
git-apply.txt git-apply(1): document --unidiff-zero 2006-09-17 15:08:29 -07:00
git-applymbox.txt Brief documentation for the mysterious git-am script 2005-10-20 22:32:07 -07:00
git-applypatch.txt Remove trailing dot after short description 2006-03-09 11:44:11 -08:00
git-archimport.txt git/Documentation: fix SYNOPSIS style bugs 2006-03-05 17:02:02 -08:00
git-archive.txt git-archive: update documentation 2006-09-25 21:17:43 -07:00
git-bisect.txt Documentation: talk about pathspec in bisect. 2005-12-05 00:15:24 -08:00
git-blame.txt git-blame(1): mention options in the synopsis and advertise pickaxe 2006-08-25 19:26:05 -07:00
git-branch.txt Merge branch 'master' into sp/reflog 2006-05-24 16:49:24 -07:00
git-cat-file.txt cat-file: document -p option 2006-05-24 22:29:23 -07:00
git-check-ref-format.txt Some doc typo fixes 2006-06-07 11:49:35 -07:00
git-checkout-index.txt Fix up docs where "--" isn't displayed correctly. 2006-05-05 14:21:52 -07:00
git-checkout.txt Merge branch 'master' into sp/reflog 2006-05-24 16:49:24 -07:00
git-cherry-pick.txt cherry-pick: make -r the default 2006-10-05 17:54:14 -07:00
git-cherry.txt Clarify git-cherry documentation. 2006-05-05 14:23:08 -07:00
git-clean.txt Teach git-clean optional <paths>... parameters. 2006-05-08 16:40:45 -07:00
git-clone.txt Retire git-clone-pack 2006-06-21 02:34:14 -07:00
git-commit-tree.txt trivial: clarify, what are the config's user.name and user.email about 2006-01-05 17:23:21 -08:00
git-commit.txt Minor documentation fixup. 2006-07-01 17:09:01 -07:00
git-convert-objects.txt Convert usage of GIT and Git into git 2005-10-10 16:01:31 -07:00
git-count-objects.txt builtin-count-objects: make it official. 2006-05-01 23:06:06 -07:00
git-cvsexportcommit.txt cvsexportcommit - add -a (add author line) flag, cleanup warnings 2006-07-23 22:51:14 -07:00
git-cvsimport.txt Documentation: convert uses of git-link macro to gitlink 2006-08-02 11:32:04 -07:00
git-cvsserver.txt git-cvsserver asciidoc formatting tweaks 2006-06-07 16:32:50 -07:00
git-daemon.txt Cleaned up git-daemon virtual hosting support. 2006-09-27 18:00:52 -07:00
git-describe.txt Some doc typo fixes 2006-06-07 11:49:35 -07:00
git-diff-files.txt Assorted typo fixes 2006-07-09 02:42:41 -07:00
git-diff-index.txt Documentation: Spelling fixes 2006-06-03 23:54:55 -07:00
git-diff-stages.txt Remove trailing dot after short description 2006-03-09 11:44:11 -08:00
git-diff-tree.txt Documentation: Spelling fixes 2006-06-03 23:54:55 -07:00
git-diff.txt change ent to tree in git-diff documentation 2006-07-09 03:26:49 -07:00
git-fetch-pack.txt Remove trailing dot after short description 2006-03-09 11:44:11 -08:00
git-fetch.txt Remove trailing dot after short description 2006-03-09 11:44:11 -08:00
git-fmt-merge-msg.txt Documentation for git-fmt-merge-msg 2005-11-01 14:45:49 -08:00
git-format-patch.txt Add option to set initial In-Reply-To/References 2006-07-14 20:41:37 -07:00
git-fsck-objects.txt Documentation: Spelling fixes 2006-06-03 23:54:55 -07:00
git-get-tar-commit-id.txt Remove trailing dot after short description 2006-03-09 11:44:11 -08:00
git-grep.txt grep --all-match 2006-09-27 23:59:09 -07:00
git-hash-object.txt Remove trailing dot after short description 2006-03-09 11:44:11 -08:00
git-http-fetch.txt Teach git-http-fetch the --stdin switch 2006-07-27 19:33:48 -07:00
git-http-push.txt Documentation: add missing second colons and remove a typo 2006-10-12 09:42:36 -07:00
git-imap-send.txt Several trivial documentation touch ups. 2006-05-05 14:21:18 -07:00
git-index-pack.txt Add git-index-pack utility 2005-10-12 18:32:02 -07:00
git-init-db.txt Document receive.denyNonFastforwards 2006-09-20 23:32:22 -07:00
git-instaweb.txt Add git-instaweb, instantly browse the working repo with gitweb 2006-07-01 18:29:26 -07:00
git-local-fetch.txt Teach git-local-fetch the --stdin switch 2006-07-27 19:33:48 -07:00
git-log.txt Fix up docs where "--" isn't displayed correctly. 2006-05-05 14:21:52 -07:00
git-lost-found.txt Remove trailing dot after short description 2006-03-09 11:44:11 -08:00
git-ls-files.txt Documentation about exclude/ignore files 2006-07-13 21:52:42 -07:00
git-ls-remote.txt git-ls-remote(1): document --upload-pack 2006-08-25 19:25:58 -07:00
git-ls-tree.txt Documentation: git-ls-tree (typofix) 2006-06-07 16:29:36 -07:00
git-mailinfo.txt Remove trailing dot after short description 2006-03-09 11:44:11 -08:00
git-mailsplit.txt Assorted typo fixes 2006-07-09 02:42:41 -07:00
git-merge-base.txt Update the documentation for git-merge-base 2006-05-15 23:19:46 -07:00
git-merge-index.txt Documentation: Spelling fixes 2006-06-03 23:54:55 -07:00
git-merge-one-file.txt Remove the version tags from the manpages 2005-10-10 14:49:52 -07:00
git-merge-tree.txt Documentation: add a couple of missing docs. 2006-04-13 00:21:06 -07:00
git-merge.txt Assorted typo fixes 2006-07-09 02:42:41 -07:00
git-mktag.txt Remove the version tags from the manpages 2005-10-10 14:49:52 -07:00
git-mktree.txt Documentation: add a couple of missing docs. 2006-04-13 00:21:06 -07:00
git-mv.txt Remove trailing dot after short description 2006-03-09 11:44:11 -08:00
git-name-rev.txt typofix (git-name-rev documentation) 2006-07-11 12:45:20 -07:00
git-p4import.txt Assorted typo fixes 2006-07-09 02:42:41 -07:00
git-pack-objects.txt Add default values for --window and --depth to the docs 2006-10-06 02:53:39 -07:00
git-pack-redundant.txt Assorted typo fixes 2006-07-09 02:42:41 -07:00
git-parse-remote.txt [PATCH] Documentation: Update all files to use the new gitlink: macro 2005-09-20 15:07:52 -07:00
git-patch-id.txt Documentation: Spelling fixes 2006-06-03 23:54:55 -07:00
git-peek-remote.txt Remove trailing dot after short description 2006-03-09 11:44:11 -08:00
git-pickaxe.txt git-pickaxe -M: blame line movements within a file. 2006-10-20 00:27:05 -07:00
git-prune-packed.txt cosmetics: change from 'See-Also' to 'See Also' 2006-03-05 00:57:37 -08:00
git-prune.txt Fix up docs where "--" isn't displayed correctly. 2006-05-05 14:21:52 -07:00
git-pull.txt Remove trailing dot after short description 2006-03-09 11:44:11 -08:00
git-push.txt git-push: allow -f as an alias for --force 2006-08-02 11:30:42 -07:00
git-quiltimport.txt Implement a --dry-run option to git-quiltimport 2006-05-18 22:55:57 -07:00
git-read-tree.txt Merge branch 'jc/rw-prefix' 2006-06-17 17:56:52 -07:00
git-rebase.txt git-rebase: Add a -v option to show a diffstat of the changes upstream at the start of a rebase. 2006-10-04 15:02:04 -07:00
git-receive-pack.txt Document receive.denyNonFastforwards 2006-09-20 23:32:22 -07:00
git-relink.txt Remove trailing dot after short description 2006-03-09 11:44:11 -08:00
git-repack.txt Add default values for --window and --depth to the docs 2006-10-06 02:53:39 -07:00
git-repo-config.txt Merge branch 'master' into pb/gitpm 2006-08-07 17:02:07 -07:00
git-request-pull.txt Remove trailing dot after short description 2006-03-09 11:44:11 -08:00
git-rerere.txt git-rerere: reuse recorded resolve. 2006-02-06 21:53:11 -08:00
git-reset.txt Documentation: Spelling fixes 2006-06-03 23:54:55 -07:00
git-resolve.txt The synopsis of the manpages should use the hyphenated version 2005-10-10 16:01:32 -07:00
git-rev-list.txt revision traversal: --author, --committer, and --grep. 2006-09-20 11:14:39 -07:00
git-rev-parse.txt Add revspec documentation for ':path', ':[0-3]:path' and git-describe 2006-10-18 21:43:30 -07:00
git-revert.txt Remove trailing dot after short description 2006-03-09 11:44:11 -08:00
git-rm.txt Fix up docs where "--" isn't displayed correctly. 2006-05-05 14:21:52 -07:00
git-send-email.txt Check and document the options to prevent mistakes. 2006-06-22 00:20:20 -07:00
git-send-pack.txt Documentation: add missing second colons and remove a typo 2006-10-12 09:42:36 -07:00
git-sh-setup.txt Documentation: Spelling fixes 2006-06-03 23:54:55 -07:00
git-shell.txt git/Documentation: fix SYNOPSIS style bugs 2006-03-05 17:02:02 -08:00
git-shortlog.txt Documentation: add missing second colons and remove a typo 2006-10-12 09:42:36 -07:00
git-show-branch.txt show-branch: match documentation and usage 2006-07-06 19:29:00 -07:00
git-show-index.txt Convert usage of GIT and Git into git 2005-10-10 16:01:31 -07:00
git-show.txt Remove trailing dot after short description 2006-03-09 11:44:11 -08:00
git-ssh-fetch.txt Remove the version tags from the manpages 2005-10-10 14:49:52 -07:00
git-ssh-upload.txt Remove the version tags from the manpages 2005-10-10 14:49:52 -07:00
git-status.txt Documentation: git-status takes the same options as git-commit 2006-08-08 21:55:05 -07:00
git-stripspace.txt Remove trailing dot after short description 2006-03-09 11:44:11 -08:00
git-svn.txt Documentation/git-svn: document some of the newer features 2006-10-11 15:24:15 -07:00
git-svnimport.txt Fix multi-paragraph list items in OPTIONS section 2006-03-20 14:37:33 -08:00
git-symbolic-ref.txt Documentation: do not blindly run 'cat' .git/HEAD, or echo into it. 2005-11-15 01:31:04 -08:00
git-tag.txt Fix some inconsistencies in the docs 2006-03-09 11:43:58 -08:00
git-tar-tree.txt Remove upload-tar and make git-tar-tree a thin wrapper to git-archive 2006-09-24 19:55:08 -07:00
git-tools.txt Assorted typo fixes 2006-07-09 02:42:41 -07:00
git-unpack-file.txt Remove the version tags from the manpages 2005-10-10 14:49:52 -07:00
git-unpack-objects.txt unpack-objects -r: call it "recover". 2006-09-13 12:59:49 -07:00
git-update-index.txt update-index -g 2006-08-23 21:24:47 -07:00
git-update-ref.txt Change order of -m option to update-ref. 2006-05-19 15:03:10 -07:00
git-update-server-info.txt Documentation: HTTP needs update-server-info. 2005-12-17 11:39:39 -08:00
git-upload-archive.txt Add git-upload-archive 2006-09-09 11:57:37 -07:00
git-upload-pack.txt Retire git-clone-pack 2006-06-21 02:34:14 -07:00
git-var.txt Deprecate usage of git-var -l for getting config vars list 2006-04-24 22:29:36 -07:00
git-verify-pack.txt Fix up docs where "--" isn't displayed correctly. 2006-05-05 14:21:52 -07:00
git-verify-tag.txt Remove trailing dot after short description 2006-03-09 11:44:11 -08:00
git-whatchanged.txt Fix up docs where "--" isn't displayed correctly. 2006-05-05 14:21:52 -07:00
git-write-tree.txt write-tree: --prefix=<path> 2006-05-01 22:29:16 -07:00
git.txt git-pickaxe: blame rewritten. 2006-10-19 22:42:49 -07:00
gitk.txt gitk(1): mention --all 2006-09-20 09:00:14 -07:00
glossary.txt Documentation: add missing second colons and remove a typo 2006-10-12 09:42:36 -07:00
hooks.txt Fix trivial typos and inconsistencies in hooks documentation 2006-09-20 08:36:12 -07:00
howto-index.sh Allow asciidoc formatted documentation in howto/ 2005-08-29 22:38:12 -07:00
install-webdoc.sh Documentation/Makefile: create tarballs for the man pages and html files 2006-05-18 20:15:45 -07:00
Makefile Documentation: Fix howto/revert-branch-rebase.html generation 2006-09-01 12:41:34 -07:00
merge-options.txt git-merge --squash 2006-06-24 01:11:19 -07:00
merge-strategies.txt Documentation: recursive is the default strategy these days. 2005-12-08 14:04:33 -08:00
pull-fetch-param.txt Docs: move git url and remotes text to separate sections 2006-02-06 21:14:56 -08:00
repository-layout.txt Documentation about exclude/ignore files 2006-07-13 21:52:42 -07:00
sort_glossary.pl Added definitions for a few words: 2006-05-03 22:31:50 -07:00
SubmittingPatches Assorted typo fixes 2006-07-09 02:42:41 -07:00
tutorial-2.txt Documentation: Fix broken links 2006-09-13 23:39:33 -07:00
tutorial.txt Some doc typo fixes 2006-06-07 11:49:35 -07:00
urls.txt Documentation/urls.txt: Use substitution to escape square brackets 2006-07-14 16:36:00 -07:00