Felipe Contreras <felipe.contreras@xxxxxxxxx> writes: > On Wed, May 22, 2013 at 10:23 PM, Felipe Contreras > <felipe.contreras@xxxxxxxxx> wrote: >> This doesn't make any sense: > > Ah, never mind, it's COPYING the one being modified, not EXTRACTING. Yes. The different levels of -C happens to correspond to the software engineering practice from best to sloppy: - When you refactor to have a block of lines in a file , the original of that block would have come from another file (or the same file) you touched to remove duplication, so a single -C looks for an origin only from modified files (best). - When you start a new file, you may have to start from some boilerplate material that already exists in another file that is not (and does not have to be) changed in the commit you add that new file, so double -C -C looks for an origin of lines from other files, even unmodified ones, when looking at the lines in a new file (unfortunate but acceptable). - When you copy and paste without making any effort to refactor, you modify a file by adding new lines that match identically from another existing file, the latter of which does not change in the commit you do that copy and paste. To find this, you need to look for an origin for any file from all the other files, and triple -C -C -C lets you do so (sloppy). -- 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