• Junio C Hamano's avatar
    Rename environment variables. · d19938ab
    Junio C Hamano authored
    H. Peter Anvin mentioned that using SHA1_whatever as an
    environment variable name is not nice and we should instead use
    names starting with "GIT_" prefix to avoid conflicts.  Here is
    what this patch does:
     * Renames the following environment variables:
        New name                           Old Name
        GIT_AUTHOR_DATE                    AUTHOR_DATE
        GIT_AUTHOR_EMAIL                   AUTHOR_EMAIL
        GIT_AUTHOR_NAME                    AUTHOR_NAME
     * Introduces a compatibility macro, gitenv(), which does an
       getenv() and if it fails calls gitenv_bc(), which in turn
       picks up the value from old name while giving a warning about
       using an old name.
     * Changes all users of the environment variable to fetch
       environment variable with the new name using gitenv().
     * Updates the documentation and scripts shipped with Linus GIT
    The transition plan is as follows:
     * We will keep the backward compatibility list used by gitenv()
       for now, so the current scripts and user environments
       continue to work as before.  The users will get warnings when
       they have old name but not new name in their environment to
       the stderr.
     * The Porcelain layers should start using new names.  However,
       just in case it ends up calling old Plumbing layer
       implementation, they should also export old names, taking
       values from the corresponding new names, during the
       transition period.
     * After a transition period, we would drop the compatibility
       support and drop gitenv().  Revert the callers to directly
       call getenv() but keep using the new names.
       The last part is probably optional and the transition
       duration needs to be set to a reasonable value.
    Signed-off-by: default avatarJunio C Hamano <[email protected]>