Jeff King venit, vidit, dixit 03.03.2009 16:23: > On Tue, Mar 03, 2009 at 03:28:08PM +0100, "Peter Valdemar Mørch (Lists)" wrote: > >> Commits where only the indentation of 'foo' is changed are not shown with >> "git log -Sfoo". Is there any way to force showing them along with other >> changes involving foo? (E.g. for python, indentation matters!) >> >> Why doesn't the second commit show up in the following? > > Because you misunderstand how "-S" works (but don't worry, it's not your > fault -- the documentation is somewhat misleading). The documentation says: > > -S<string> > Look for differences that contain the change in <string>. > > but what it actually does is find changes where the string was introduced > or removed. So it literally counts the number of occurences before and > after the commit, and the commit is interesting if they are not equal. Hmm. The diffcore doc sounds more like if the filepair is picked if #before > 0 and #after = 0, but not if #after > 0. In any case, the pickaxe can't detect moving around of strings, right? >> # Create text containing 'line' without whitespace >> $ echo 'line' > text >> $ git add text >> $ git commit -m "first" text >> >> # Here, I add one space of indentation in front of 'line' >> $ echo ' line' > text >> $ git commit -m "second" text > > So "line" wasn't actually changed. It just happens to be on a line which > _did_ change. > >> I would like to see both "first" and "second" somehow - can I do that? > > I don't think there's an easy way to do this right now; you would need > to do "git log -p" and search through the output to get what you want (I > often do this just using the pager's search function). If you know what your are looking for you can do variations on git log -S'line| line' --pickaxe-regex which seems to be different from git log -S'line' -S' line' which was my first attempt... Michael -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html