| Git v2.8.3 Release Notes | 
 | ======================== | 
 |  | 
 | Fixes since v2.8.2 | 
 | ------------------ | 
 |  | 
 |  * "git send-email" now uses a more readable timestamps when | 
 |    formulating a message ID. | 
 |  | 
 |  * The repository set-up sequence has been streamlined (the biggest | 
 |    change is that there is no longer git_config_early()), so that we | 
 |    do not attempt to look into refs/* when we know we do not have a | 
 |    Git repository. | 
 |  | 
 |  * When "git worktree" feature is in use, "git branch -d" allowed | 
 |    deletion of a branch that is checked out in another worktree | 
 |  | 
 |  * When "git worktree" feature is in use, "git branch -m" renamed a | 
 |    branch that is checked out in another worktree without adjusting | 
 |    the HEAD symbolic ref for the worktree. | 
 |  | 
 |  * "git format-patch --help" showed `-s` and `--no-patch` as if these | 
 |    are valid options to the command.  We already hide `--patch` option | 
 |    from the documentation, because format-patch is about showing the | 
 |    diff, and the documentation now hides these options as well. | 
 |  | 
 |  * A change back in version 2.7 to "git branch" broke display of a | 
 |    symbolic ref in a non-standard place in the refs/ hierarchy (we | 
 |    expect symbolic refs to appear in refs/remotes/*/HEAD to point at | 
 |    the primary branch the remote has, and as .git/HEAD to point at the | 
 |    branch we locally checked out). | 
 |  | 
 |  * A partial rewrite of "git submodule" in the 2.7 timeframe changed | 
 |    the way the gitdir: pointer in the submodules point at the real | 
 |    repository location to use absolute paths by accident.  This has | 
 |    been corrected. | 
 |  | 
 |  * "git commit" misbehaved in a few minor ways when an empty message | 
 |    is given via -m '', all of which has been corrected. | 
 |  | 
 |  * Support for CRAM-MD5 authentication method in "git imap-send" did | 
 |    not work well. | 
 |  | 
 |  * The socks5:// proxy support added back in 2.6.4 days was not aware | 
 |    that socks5h:// proxies behave differently. | 
 |  | 
 |  * "git config" had a codepath that tried to pass a NULL to | 
 |    printf("%s"), which nobody seems to have noticed. | 
 |  | 
 |  * On Cygwin, object creation uses the "create a temporary and then | 
 |    rename it to the final name" pattern, not "create a temporary, | 
 |    hardlink it to the final name and then unlink the temporary" | 
 |    pattern. | 
 |  | 
 |    This is necessary to use Git on Windows shared directories, and is | 
 |    already enabled for the MinGW and plain Windows builds.  It also | 
 |    has been used in Cygwin packaged versions of Git for quite a while. | 
 |    See https://lore.kernel.org/git/20160419091055.GF2345@dinwoodie.org/ | 
 |    and https://lore.kernel.org/git/20150811100527.GW14466@dinwoodie.org/. | 
 |  | 
 |  * "git replace -e" did not honour "core.editor" configuration. | 
 |  | 
 |  * Upcoming OpenSSL 1.1.0 will break compilation b updating a few APIs | 
 |    we use in imap-send, which has been adjusted for the change. | 
 |  | 
 |  * "git submodule" reports the paths of submodules the command | 
 |    recurses into, but this was incorrect when the command was not run | 
 |    from the root level of the superproject. | 
 |  | 
 |  * The test scripts for "git p4" (but not "git p4" implementation | 
 |    itself) has been updated so that they would work even on a system | 
 |    where the installed version of Python is python 3. | 
 |  | 
 |  * The "user.useConfigOnly" configuration variable makes it an error | 
 |    if users do not explicitly set user.name and user.email.  However, | 
 |    its check was not done early enough and allowed another error to | 
 |    trigger, reporting that the default value we guessed from the | 
 |    system setting was unusable.  This was a suboptimal end-user | 
 |    experience as we want the users to set user.name/user.email without | 
 |    relying on the auto-detection at all. | 
 |  | 
 |  * "git mv old new" did not adjust the path for a submodule that lives | 
 |    as a subdirectory inside old/ directory correctly. | 
 |  | 
 |  * "git push" from a corrupt repository that attempts to push a large | 
 |    number of refs deadlocked; the thread to relay rejection notices | 
 |    for these ref updates blocked on writing them to the main thread, | 
 |    after the main thread at the receiving end notices that the push | 
 |    failed and decides not to read these notices and return a failure. | 
 |  | 
 |  * A question by "git send-email" to ask the identity of the sender | 
 |    has been updated. | 
 |  | 
 |  * Recent update to Git LFS broke "git p4" by changing the output from | 
 |    its "lfs pointer" subcommand. | 
 |  | 
 |  * Some multi-byte encoding can have a backslash byte as a later part | 
 |    of one letter, which would confuse "highlight" filter used in | 
 |    gitweb. | 
 |  | 
 | Also contains minor documentation updates and code clean-ups. |