Version Control with Subversion, 2nd Edition
by C. Michael Pilato, Ben Collins-Sussman, Brian W. Fitzpatrick
Name
svn blame — Show author and revision information inline for the specified files or URLs.
Synopsis
svn blameTARGET[@REV]...
Description
Show author and revision information inline for the specified files or URLs. Each line of text is annotated at the beginning with the author (username) and the revision number for the last change to that line.
Alternate names
praise, annotate, ann.
Changes
Nothing.
Accesses repository
Yes.
Options
--extensions (-x)ARG--force --incremental --revision (-r)ARG--use-merge-history (-g) --verbose (-v) --xml
Examples
If you want to see blame-annotated source for readme.txt in your test repository:
$ svn blame http://svn.red-bean.com/repos/test/readme.txt
3 sally This is a README file.
5 harry You should read this.
Even if svn blame says that Harry last modified readme.txt in revision 5, you’ll have to examine exactly what the revision changed to be sure that Harry changed the context of the line—he may have adjusted just the whitespace.
If you use the --xml option, you can get XML
output describing the blame annotations, but not the contents of the
lines themselves:
$ svn blame --xml http://svn.red-bean.com/repos/test/readme.txt <?xml version="1.0"?> <blame> <target path="sandwich.txt"> <entry line-number="1"> <commit revision="3"> <author>sally</author> <date>2008-05-25T19:12:31.428953Z</date> </commit> </entry> <entry line-number="2"> <commit revision="5"> <author>harry</author> <date>2008-05-29T03:26:12.293121Z</date> </commit> </entry> </target> </blame> ...