{"thread":{"id":"38340","subject":"[ANNOUNCE] Git v2.2.2","startedAt":"2015-01-12T23:57:31Z","lastAt":"2015-01-12T23:57:31Z","messageCount":1,"participants":["Junio C Hamano"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"254573","messageId":"xmqqlhl75z84.fsf@gitster.dls.corp.google.com","threadId":"38340","inReplyTo":null,"subject":"[ANNOUNCE] Git v2.2.2","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2015-01-12T23:57:31Z","receivedAt":"2015-01-12T23:57:31Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"The latest maintenance release Git v2.2.2 is now available at\nthe usual places.\n\nThis backports many fixes that were not in 2.2.1 that have been used\non 'master' for the past few weeks.\n\nThe tarballs are found at:\n\n    https://www.kernel.org/pub/software/scm/git/\n\nThe following public repositories all have a copy of the 'v2.2.2'\ntag and the 'maint' branch that the tag points at:\n\n  url = https://kernel.googlesource.com/pub/scm/git/git\n  url = git://repo.or.cz/alt-git.git\n  url = https://code.google.com/p/git-core/\n  url = git://git.sourceforge.jp/gitroot/git-core/git.git\n  url = git://git-core.git.sourceforge.net/gitroot/git-core/git-core\n  url = https://github.com/gitster/git\n\nGit v2.2.2 Release Notes\n========================\n\nFixes since v2.2.1\n------------------\n\n * \"git checkout $treeish $path\", when $path in the index and the\n   working tree already matched what is in $treeish at the $path,\n   still overwrote the $path unnecessarily.\n\n * \"git config --get-color\" did not parse its command line arguments\n   carefully.\n\n * open() emulated on Windows platforms did not give EISDIR upon\n   an attempt to open a directory for writing.\n\n * A few code paths used abs() when they should have used labs() on\n   long integers.\n\n * \"gitweb\" used to depend on a behaviour recent CGI.pm deprecated.\n\n * \"git init\" (hence \"git clone\") initialized the per-repository\n   configuration file .git/config with x-bit by mistake.\n\n * Git 2.0 was supposed to make the \"simple\" mode for the default of\n   \"git push\", but it didn't.\n\n * \"Everyday\" document had a broken link.\n\n * The build procedure did not bother fixing perl and python scripts\n   when NO_PERL and NO_PYTHON build-time configuration changed.\n\n * The code that reads the reflog from the newer to the older entries\n   did not handle an entry that crosses a boundary of block it uses to\n   read them correctly.\n\n * \"git apply\" was described in the documentation to take --ignore-date\n   option, which it does not.\n\n * Traditionally we tried to avoid interpreting date strings given by\n   the user as future dates, e.g. GIT_COMMITTER_DATE=2014-12-10 when\n   used early November 2014 was taken as \"October 12, 2014\" because it\n   is likely that a date in the future, December 10, is a mistake.\n   This heuristics has been loosened to allow people to express future\n   dates (most notably, --until=<date> may want to be far in the\n   future) and we no longer tiebreak by future-ness of the date when\n\n    (1) ISO-like format is used, and\n    (2) the string can make sense interpreted as both y-m-d and y-d-m.\n\n   Git may still have to use the heuristics to tiebreak between dd/mm/yy\n   and mm/dd/yy, though.\n\n * The code to abbreviate an object name to its short unique prefix\n   has been optimized when no abbreviation was requested.\n\n * \"git add --ignore-errors ...\" did not ignore an error to\n   give a file that did not exist.\n\n * Git did not correctly read an overlong refname from a packed refs\n   file.\n\nAlso contains typofixes, documentation updates and trivial code clean-ups.\n\n----------------------------------------------------------------\n\nChanges since v2.2.1 are as follows:\n\nAlexander Kuleshov (1):\n      clean: typofix\n\nJeff King (17):\n      pass TIME_DATE_NOW to approxidate future-check\n      checkout $tree: do not throw away unchanged index entries\n      approxidate: allow ISO-like dates far in the future\n      Makefile: have perl scripts depend on NO_PERL setting\n      t0090: mark add-interactive test with PERL prerequisite\n      t960[34]: mark cvsimport tests as requiring perl\n      gitweb: hack around CGI's list-context param() handling\n      docs: describe ANSI 256-color mode\n      config: fix parsing of \"git config --get-color some.key -1\"\n      t4026: test \"normal\" color\n      push: truly use \"simple\" as default, not \"upstream\"\n      for_each_reflog_ent_reverse: fix newlines on block boundaries\n      for_each_reflog_ent_reverse: turn leftover check into assertion\n      read_packed_refs: use a strbuf for reading lines\n      read_packed_refs: pass strbuf to parse_ref_line\n      read_packed_refs: use skip_prefix instead of static array\n      is_hfs_dotgit: loosen over-eager match of \\u{..47}\n\nJohannes Sixt (1):\n      Windows: correct detection of EISDIR in mingw_open()\n\nJonathan Nieder (2):\n      Makefile: simplify by using SCRIPT_{PERL,SH}_GEN macros\n      Makefile: have python scripts depend on NO_PYTHON setting\n\nJunio C Hamano (2):\n      Prepare for 2.2.2\n      Git 2.2.2\n\nMichael Haggerty (1):\n      create_default_files(): don't set u+x bit on $GIT_DIR/config\n\nMichael J Gruber (1):\n      add: ignore only ignored files\n\nMike Hommey (1):\n      sha1_name: avoid unnecessary sha1 lookup in find_unique_abbrev\n\nRené Scharfe (2):\n      use labs() for variables of type long instead of abs()\n      use labs() for variables of type long instead of abs()\n\nRonald Wampler (1):\n      git-am.txt: --ignore-date flag is not passed to git-apply\n\nbrian m. carlson (1):\n      Documentation: change \"gitlink\" typo in git-push\n"}]}