2008/11/24 Johannes Schindelin <Johannes.Schindelin@xxxxxx>: > Hi people, > > I do not know if I hit that behavior before, I'm pretty sure it has, http://thread.gmane.org/gmane.comp.version-control.git/100113/focus=100115 (at least i think that's the same case?) > but now it hit me big time: > if a commit moves a certain string from one place to another, "git log > -S<string>" does not pick up that commit. The code responsible for this > is in diffcore-pickaxe.c: > > else if (!diff_unmodified_pair(p) && > contains(p->one, needle, len, regexp) != > contains(p->two, needle, len, regexp)) > has_changes++; > > Basically, the "contains()" method says how often the needle was found, > and pickaxe just assumes that a move of a string is not interesting > enough. > > Now, this behavior is probably intended, as searching files is much > cheaper than generating the diffs between them, yet it is something you'll > have to keep in mind when using "-S". -- Mikael Magnusson -- 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