{"thread":{"id":"32375","subject":"Git Log and History Simplification","startedAt":"2012-12-17T11:33:09Z","lastAt":"2012-12-17T19:53:24Z","messageCount":4,"participants":["Dinesh Subramani","Nguyen Thai Ngoc Duy","Tomas Carnecky","Junio C Hamano"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"205047","messageId":"CAE116wxTY0sFh5nZwGEYRz=gJwXgFEj8Nvwh41RCYH4vgYCqSQ@mail.gmail.com","threadId":"32375","inReplyTo":null,"subject":"Git Log and History Simplification","fromName":"Dinesh Subramani","fromEmail":"dinesh.subramani@gmail.com","sentAt":"2012-12-17T11:33:09Z","receivedAt":"2012-12-17T11:33:09Z","isPatch":false,"sender":{"key":"dinesh.subramani@gmail.com","avatar":null},"body":"I am using the below command :\n\ngit log --stat --decorate=full --since=<date>\n\nCan you please let me know if the above command will list all the\ncommits and would not skip any of the commits due to History\nSimplification. Any help would be very useful.\n\nRegards,\nDinesh\n"},{"id":"205051","messageId":"CACsJy8BsL03zr_wGZH5kqS0NaMfPKct2T7_62jstxRB4c_FudQ@mail.gmail.com","threadId":"32375","inReplyTo":"CAE116wxTY0sFh5nZwGEYRz=gJwXgFEj8Nvwh41RCYH4vgYCqSQ@mail.gmail.com","subject":"Re: Git Log and History Simplification","fromName":"Nguyen Thai Ngoc Duy","fromEmail":"pclouds@gmail.com","sentAt":"2012-12-17T11:49:55Z","receivedAt":"2012-12-17T11:49:55Z","isPatch":false,"sender":{"key":"pclouds@gmail.com","avatar":"https://avatars.githubusercontent.com/u/720?v=4"},"body":"On Mon, Dec 17, 2012 at 6:33 PM, Dinesh Subramani\n<dinesh.subramani@gmail.com> wrote:\n> I am using the below command :\n>\n> git log --stat --decorate=full --since=<date>\n>\n> Can you please let me know if the above command will list all the\n> commits and would not skip any of the commits due to History\n> Simplification. Any help would be very useful.\n\nIf my memory is still functioning, history simplification only takes\nplace when you specify pathspec. The above command does not have\npathspec, so no history simplification.\n-- \nDuy\n"},{"id":"205054","messageId":"1355747660-ner-9463@calvin","threadId":"32375","inReplyTo":"CAE116wxTY0sFh5nZwGEYRz=gJwXgFEj8Nvwh41RCYH4vgYCqSQ@mail.gmail.com","subject":"Re: Git Log and History Simplification","fromName":"Tomas Carnecky","fromEmail":"tomas.carnecky@gmail.com","sentAt":"2012-12-17T12:34:20Z","receivedAt":"2012-12-17T12:34:20Z","isPatch":false,"sender":{"key":"tomas.carnecky@gmail.com","avatar":null},"body":"On Mon, 17 Dec 2012 17:03:09 +0530, Dinesh Subramani <dinesh.subramani@gmail.com> wrote:\n> I am using the below command :\n> \n> git log --stat --decorate=full --since=<date>\n> \n> Can you please let me know if the above command will list all the\n> commits and would not skip any of the commits due to History\n> Simplification. Any help would be very useful.\n\nThe way I understand the man page, to disable history simplification you have\nto use --full-history --sparse.\n"},{"id":"205067","messageId":"7vvcc0lakr.fsf@alter.siamese.dyndns.org","threadId":"32375","inReplyTo":"CACsJy8BsL03zr_wGZH5kqS0NaMfPKct2T7_62jstxRB4c_FudQ@mail.gmail.com","subject":"Re: Git Log and History Simplification","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2012-12-17T19:53:24Z","receivedAt":"2012-12-17T19:53:24Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Nguyen Thai Ngoc Duy <pclouds@gmail.com> writes:\n\n> On Mon, Dec 17, 2012 at 6:33 PM, Dinesh Subramani\n> <dinesh.subramani@gmail.com> wrote:\n>> I am using the below command :\n>>\n>> git log --stat --decorate=full --since=<date>\n>>\n>> Can you please let me know if the above command will list all the\n>> commits and would not skip any of the commits due to History\n>> Simplification. Any help would be very useful.\n>\n> If my memory is still functioning, history simplification only takes\n> place when you specify pathspec. The above command does not have\n> pathspec, so no history simplification.\n\nThink of the pathspec limiting as asking to choose commits by one\ncriteria (i.e. touches paths in a way that matters in the result),\nlike any other commit limiting criteria like \"--grep\" (i.e. asks to\nchoose commits that has the given string in its message).\n\nWith something like --author or --grep, we would need to look at\neach individual commmit to decide if it matches the criteria.  With\npathspec, when we look at a single-parent commit, we inspect it to\ndecide if it matches the criteria of touching the specified paths.\n\nWhen we are looking at a merge commit, however, if one of the\nparents match the result at all the paths that match the given\npathspec, we know any and all commits on the other side branches do\nnot matter in the result, hence we can omit them by not even having\nto follow that parent ancestry.\n\nIf you mention --full-history in your answer, it will be perfect ;-)\n"}]}