{"push_id":783000001,"size":5,"distinct_size":0,"ref":"refs/heads/nd/ita-cleanup","head":"11e1abd6de6dd30416e0db664c73ab51faf0c116","before":"35baa63a73af0db00e7d3cc438e899401ea3bbe6","commits":[{"sha":"895ff3b2c73c737b699a921fe71cea4dadefab7b","author":{"email":"024f400cd820cb2ddbe54c7fecfd01e45f30bb96@gmail.com","name":"Nguyễn Thái Ngọc Duy"},"message":"add and use a convenience macro ce_intent_to_add()\n\nSigned-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/gitster/git/commits/895ff3b2c73c737b699a921fe71cea4dadefab7b"},{"sha":"d7c558fcd3b33230d0a6c274e432578287471f14","author":{"email":"024f400cd820cb2ddbe54c7fecfd01e45f30bb96@gmail.com","name":"Nguyễn Thái Ngọc Duy"},"message":"apply: fix adding new files on i-t-a entries\n\nApplying a patch that adds a file when that file is registered with \"git\nadd -N\" will fail with message \"already exists in index\" because\ngit-apply checks, sees those i-t-a entries and aborts. git-apply does\nnot realize those are for bookkeeping only, they do not really exist in\nthe index. This patch tightens the \"exists in index\" check, ignoring\ni-t-a entries.\n\nReported-by: Patrick Higgins <phiggins@google.com>\nReported-by: Bjørnar Snoksrud <snoksrud@gmail.com>\nSigned-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/gitster/git/commits/d7c558fcd3b33230d0a6c274e432578287471f14"},{"sha":"2256eff6054520f9867272830a34ba7535906069","author":{"email":"024f400cd820cb2ddbe54c7fecfd01e45f30bb96@gmail.com","name":"Nguyễn Thái Ngọc Duy"},"message":"apply: make sure check_preimage() does not leave empty file on error\n\nThe test case probably describes the test scenario the best. We have a\npatch to modify some file but the base file is gone. Because\ncheck_preimage() finds an index entry with the same old_name, it tries\nto restore the on-disk base file with cached content with\ncheckout_target() and move on.\n\nIf this old_name is i-t-a, before this patch \"apply -3\" will call\ncheckout_target() which will write an empty file (i-t-a entries always\nhave \"empty blob\" SHA-1), then it'll fail at verify_index_match()\n(i-t-a entries are always \"modified\") and the operation is aborted.\n\nThis empty file should not be created. Compare to the case where\nold_name does not exist in index, \"apply -3\" fails with a different\nerror message \"...: does not exist\" but it does not touch\nworktree. This patch makes sure the same happens to i-t-a entries.\n\nload_current() shares the same code pattern (look up an index entry,\nif on-disk version is not found, restore using the cached\nversion). Fix it too (even though it's not exercised in any test case)\n\nSigned-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/gitster/git/commits/2256eff6054520f9867272830a34ba7535906069"},{"sha":"389bfefd5419917cfc4f132a34b7a3025361cc01","author":{"email":"024f400cd820cb2ddbe54c7fecfd01e45f30bb96@gmail.com","name":"Nguyễn Thái Ngọc Duy"},"message":"checkout(-index): do not checkout i-t-a entries\n\nThe cached blob of i-t-a entries are empty blob. By checkout, we delete\nthe content we have. Don't do it.\n\nThis is done higher up instead of inside checkout_entry() because we\nwould have limited options in there: silently ignore, loudly ignore,\ndie. At higher level we can do better reporting. For example, \"git\ncheckout -- foo\" will complain that \"foo\" does not match pathspec, just\nlike when \"foo\" is not registered with \"git add -N\"\n\nSigned-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/gitster/git/commits/389bfefd5419917cfc4f132a34b7a3025361cc01"},{"sha":"11e1abd6de6dd30416e0db664c73ab51faf0c116","author":{"email":"024f400cd820cb2ddbe54c7fecfd01e45f30bb96@gmail.com","name":"Nguyễn Thái Ngọc Duy"},"message":"grep: make it clear i-t-a entries are ignored\n\nThe expression \"!S_ISREG(ce)\" covers i-t-a entries as well because\nce->ce_mode would be zero then. I could make a comment saying that, but\nit's probably better just to comment with code, in case i-t-a entry\ncontent changes in future.\n\nSigned-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/gitster/git/commits/11e1abd6de6dd30416e0db664c73ab51faf0c116"}]}