1. 13 12月, 2017 2 次提交
    • S
      travis-ci: move setting environment variables to 'ci/lib-travisci.sh' · e3371e92
      SZEDER Gábor 提交于
      Our '.travis.yml's 'env.global' section sets a bunch of environment
      variables for all build jobs, though none of them actually affects all
      build jobs.  It's convenient for us, and in most cases it works just
      fine, because irrelevant environment variables are simply ignored.
      
      However, $GIT_SKIP_TESTS is an exception: it tells the test harness to
      skip the two test scripts that are prone to occasional failures on
      OSX, but as it's set for all build jobs those tests are not run in any
      of the build jobs that are capable to run them reliably, either.
      
      Therefore $GIT_SKIP_TESTS should only be set in the OSX build jobs,
      but those build jobs are included in the build matrix implicitly (i.e.
      by combining the matrix keys 'os' and 'compiler'), and there is no way
      to set an environment variable only for a subset of those implicit
      build jobs.  (Unless we were to add new scriptlets to '.travis.yml',
      which is exactly the opposite direction that we took with commit
      657343a6 (travis-ci: move Travis CI code into dedicated scripts,
      2017-09-10)).
      
      So move setting $GIT_SKIP_TESTS to 'ci/lib-travisci.sh', where it can
      trivially be set only for the OSX build jobs.
      
      Furthermore, move setting all other environment variables from
      '.travis.yml' to 'ci/lib-travisci.sh', too, because a couple of
      environment variables are already set there, and this way all
      environment variables will be set in the same place.  All the logic
      controlling our builds is already in the 'ci/*' scripts anyway, so
      there is really no good reason to keep the environment variables
      separately.
      Signed-off-by: NSZEDER Gábor <szeder.dev@gmail.com>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      e3371e92
    • S
      travis-ci: introduce a $jobname variable for 'ci/*' scripts · bf427a94
      SZEDER Gábor 提交于
      A couple of 'ci/*' scripts are shared between different build jobs:
      'ci/lib-travisci.sh', being a common library, is sourced from almost
      every script, while 'ci/install-dependencies.sh', 'ci/run-build.sh'
      and 'ci/run-tests.sh' are shared between the "regular" GCC and Clang
      Linux and OSX build jobs, and the latter two scripts are used in the
      GETTEXT_POISON Linux build job as well.
      
      Our builds could benefit from these shared scripts being able to
      easily tell which build job they are taking part in.  Now, it's
      already quite easy to tell apart Linux vs OSX and GCC vs Clang build
      jobs, but it gets trickier with all the additional Linux-based build
      jobs included explicitly in the build matrix.
      
      Unfortunately, Travis CI doesn't provide much help in this regard.
      The closest we've got is the $TRAVIS_JOB_NUMBER variable, the value of
      which is two dot-separated integers, where the second integer
      indicates a particular build job.  While it would be possible to use
      that second number to identify the build job in our shared scripts, it
      doesn't seem like a good idea to rely on that:
      
        - Though the build job numbering sequence seems to be stable so far,
          Travis CI's documentation doesn't explicitly states that it is
          indeed stable and will remain so in the future.  And even if it
          were stable,
      
        - if we were to remove or insert a build job in the middle, then the
          job numbers of all subsequent build jobs would change accordingly.
      
      So roll our own means of simple build job identification and introduce
      the $jobname environment variable in our builds, setting it in the
      environments of the explicitly included jobs in '.travis.yml', while
      constructing one in 'ci/lib-travisci.sh' as the combination of the OS
      and compiler name for the GCC and Clang Linux and OSX build jobs.  Use
      $jobname instead of $TRAVIS_OS_NAME in scripts taking different
      actions based on the OS and build job (when installing P4 and Git LFS
      dependencies and including them in $PATH).  The following two patches
      will also rely on $jobname.
      Signed-off-by: NSZEDER Gábor <szeder.dev@gmail.com>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      bf427a94
  2. 02 11月, 2017 2 次提交
    • S
      travis-ci: don't build Git for the static analysis job · c2154953
      SZEDER Gábor 提交于
      The static analysis job on Travis CI builds Git ever since it was
      introduced in d8245bb3 (travis-ci: add static analysis build job to
      run coccicheck, 2017-04-11).  However, Coccinelle, the only static
      analysis tool in use, only needs Git's source code to work and it
      doesn't care about built Git binaries at all.
      
      Spare some of Travis CI's resources and don't build Git for the static
      analysis job unnecessarily.
      Signed-off-by: NSZEDER Gábor <szeder.dev@gmail.com>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      c2154953
    • S
      travis-ci: fix running P4 and Git LFS tests in Linux build jobs · 83d1efe5
      SZEDER Gábor 提交于
      Linux build jobs on Travis CI skip the P4 and Git LFS tests since
      commit 657343a6 (travis-ci: move Travis CI code into dedicated
      scripts, 2017-09-10), claiming there are no P4 or Git LFS installed.
      
      The reason is that P4 and Git LFS binaries are not installed to a
      directory in the default $PATH, but their directories are prepended to
      $PATH.  This worked just fine before said commit, because $PATH was
      set in a scriptlet embedded in our '.travis.yml', thus its new value
      was visible during the rest of the build job.  However, after these
      embedded scriptlets were moved into dedicated scripts executed in
      separate shell processes, any variable set in one of those scripts is
      only visible in that single script but not in any of the others.  In
      this case, 'ci/install-dependencies.sh' downloads P4 and Git LFS and
      modifies $PATH, but to no effect, because 'ci/run-tests.sh' only sees
      Travis CI's default $PATH.
      
      Move adjusting $PATH to 'ci/lib-travisci.sh', which is sourced in all
      other 'ci/' scripts, so all those scripts will see the updated $PATH
      value.
      Signed-off-by: NSZEDER Gábor <szeder.dev@gmail.com>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      83d1efe5
  3. 22 9月, 2017 1 次提交
  4. 11 9月, 2017 3 次提交
  5. 24 8月, 2017 20 次提交
    • J
      Prepare for 2.14.2 · edc74bc7
      Junio C Hamano 提交于
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      edc74bc7
    • J
      Merge branch 'jt/t1450-fsck-corrupt-packfile' into maint · 0f41b92c
      Junio C Hamano 提交于
      A test update.
      
      * jt/t1450-fsck-corrupt-packfile:
        tests: ensure fsck fails on corrupt packfiles
      0f41b92c
    • J
      Merge branch 'jb/t8008-cleanup' into maint · 86bf8e45
      Junio C Hamano 提交于
      Code clean-up.
      
      * jb/t8008-cleanup:
        t8008: rely on rev-parse'd HEAD instead of sha1 value
      86bf8e45
    • J
      Merge branch 'jt/subprocess-handshake' into maint · df2dd283
      Junio C Hamano 提交于
      Code cleanup.
      
      * jt/subprocess-handshake:
        sub-process: refactor handshake to common function
        Documentation: migrate sub-process docs to header
        convert: add "status=delayed" to filter process protocol
        convert: refactor capabilities negotiation
        convert: move multiple file filter error handling to separate function
        convert: put the flags field before the flag itself for consistent style
        t0021: write "OUT <size>" only on success
        t0021: make debug log file name configurable
        t0021: keep filter log files on comparison
      df2dd283
    • J
      Merge branch 'dc/fmt-merge-msg-microcleanup' into maint · de557036
      Junio C Hamano 提交于
      Code cleanup.
      
      * dc/fmt-merge-msg-microcleanup:
        fmt-merge-msg: fix coding style
      de557036
    • J
      Merge branch 'ah/doc-wserrorhighlight' into maint · b55b9360
      Junio C Hamano 提交于
      Doc update.
      
      * ah/doc-wserrorhighlight:
        doc: add missing values "none" and "default" for diff.wsErrorHighlight
      b55b9360
    • J
      Merge branch 'cc/ref-is-hidden-microcleanup' into maint · d0dffcac
      Junio C Hamano 提交于
      Code cleanup.
      
      * cc/ref-is-hidden-microcleanup:
        refs: use skip_prefix() in ref_is_hidden()
      d0dffcac
    • J
      Merge branch 'js/run-process-parallel-api-fix' into maint · 08692770
      Junio C Hamano 提交于
      API fix.
      
      * js/run-process-parallel-api-fix:
        run_processes_parallel: change confusing task_cb convention
      08692770
    • J
      Merge branch 'rs/pack-objects-pbase-cleanup' into maint · e22a48c4
      Junio C Hamano 提交于
      Code clean-up.
      
      * rs/pack-objects-pbase-cleanup:
        pack-objects: remove unnecessary NULL check
      e22a48c4
    • J
      Merge branch 'jt/fsck-code-cleanup' into maint · 697f11b6
      Junio C Hamano 提交于
      Code clean-up.
      
      * jt/fsck-code-cleanup:
        fsck: cleanup unused variable
        object: remove "used" field from struct object
        fsck: remove redundant parse_tree() invocation
      697f11b6
    • J
      Merge branch 'rs/stat-data-unaligned-reads-fix' into maint · 0d824bc7
      Junio C Hamano 提交于
      Code clean-up.
      
      * rs/stat-data-unaligned-reads-fix:
        dir: support platforms that require aligned reads
      0d824bc7
    • J
      Merge branch 'rs/move-array' into maint · d3b7ee08
      Junio C Hamano 提交于
      Code clean-up.
      
      * rs/move-array:
        ls-files: don't try to prune an empty index
        apply: use COPY_ARRAY and MOVE_ARRAY in update_image()
        use MOVE_ARRAY
        add MOVE_ARRAY
      d3b7ee08
    • J
      Merge branch 'rs/bswap-ubsan-fix' into maint · 752732c6
      Junio C Hamano 提交于
      Code clean-up.
      
      * rs/bswap-ubsan-fix:
        bswap: convert get_be16, get_be32 and put_be32 to inline functions
        bswap: convert to unsigned before shifting in get_be32
      752732c6
    • J
      Merge branch 'dl/credential-cache-socket-in-xdg-cache' into maint · cdc55aad
      Junio C Hamano 提交于
      A recently added test for the "credential-cache" helper revealed
      that EOF detection done around the time the connection to the cache
      daemon is torn down were flaky.  This was fixed by reacting to
      ECONNRESET and behaving as if we got an EOF.
      
      * dl/credential-cache-socket-in-xdg-cache:
        credential-cache: interpret an ECONNRESET as an EOF
      cdc55aad
    • J
      Merge branch 'hb/gitweb-project-list' into maint · b9e56be0
      Junio C Hamano 提交于
      When a directory is not readable, "gitweb" fails to build the
      project list.  Work this around by skipping such a directory.
      
      It might end up hiding a problem under the rug and a better
      solution might be to loudly complain to the administrator pointing
      out the problematic directory, but this will at least make it
      "work".
      
      * hb/gitweb-project-list:
        gitweb: skip unreadable subdirectories
      b9e56be0
    • J
      Merge branch 'ks/commit-abort-on-empty-message-fix' into maint · 01ced489
      Junio C Hamano 提交于
      "git commit" when seeing an totally empty message said "you did not
      edit the message", which is clearly wrong.  The message has been
      corrected.
      
      * ks/commit-abort-on-empty-message-fix:
        commit: check for empty message before the check for untouched template
      01ced489
    • J
      Merge branch 'jk/reflog-walk' into maint · 0cb526e0
      Junio C Hamano 提交于
      Numerous bugs in walking of reflogs via "log -g" and friends have
      been fixed.
      
      * jk/reflog-walk:
        reflog-walk: apply --since/--until to reflog dates
        reflog-walk: stop using fake parents
        rev-list: check reflog_info before showing usage
        get_revision_1(): replace do-while with an early return
        log: do not free parents when walking reflog
        log: clarify comment about reflog cycles
        revision: disallow reflog walking with revs->limited
        t1414: document some reflog-walk oddities
      0cb526e0
    • J
      Merge branch 'jc/http-sslkey-and-ssl-cert-are-paths' into maint · 72140a73
      Junio C Hamano 提交于
      The http.{sslkey,sslCert} configuration variables are to be
      interpreted as a pathname that honors "~[username]/" prefix, but
      weren't, which has been fixed.
      
      * jc/http-sslkey-and-ssl-cert-are-paths:
        http.c: http.sslcert and http.sslkey are both pathnames
      72140a73
    • J
      Merge branch 'jk/ref-filter-colors' into maint · 447f80f5
      Junio C Hamano 提交于
      "%C(color name)" in the pretty print format always produced ANSI
      color escape codes, which was an early design mistake.  They now
      honor the configuration (e.g. "color.ui = never") and also tty-ness
      of the output medium.
      
      * jk/ref-filter-colors:
        ref-filter: consult want_color() before emitting colors
        pretty: respect color settings for %C placeholders
        rev-list: pass diffopt->use_colors through to pretty-print
        for-each-ref: load config earlier
        color: check color.ui in git_default_config()
        ref-filter: pass ref_format struct to atom parsers
        ref-filter: factor out the parsing of sorting atoms
        ref-filter: make parse_ref_filter_atom a private function
        ref-filter: provide a function for parsing sort options
        ref-filter: move need_color_reset_at_eol into ref_format
        ref-filter: abstract ref format into its own struct
        ref-filter: simplify automatic color reset
        t: use test_decode_color rather than literal ANSI codes
        docs/for-each-ref: update pointer to color syntax
        check return value of verify_ref_format()
      447f80f5
    • J
      Merge branch 'js/git-gui-msgfmt-on-windows' into maint · f613b251
      Junio C Hamano 提交于
      Because recent Git for Windows do come with a real msgfmt, the
      build procedure for git-gui has been updated to use it instead of a
      hand-rolled substitute.
      
      * js/git-gui-msgfmt-on-windows:
        git-gui (MinGW): make use of MSys2's msgfmt
        git gui: allow for a long recentrepo list
        git gui: de-dup selected repo from recentrepo history
        git gui: cope with duplicates in _get_recentrepo
        git-gui: remove duplicate entries from .gitconfig's gui.recentrepo
      f613b251
  6. 05 8月, 2017 5 次提交
  7. 03 8月, 2017 1 次提交
    • J
      Merge tag 'l10n-2.14.0-rnd2' of git://github.com/git-l10n/git-po · 384a8b27
      Junio C Hamano 提交于
      l10n for Git 2.14.0 round 2
      
      * tag 'l10n-2.14.0-rnd2' of git://github.com/git-l10n/git-po:
        l10n: zh_CN: review for git v2.14.0 l10n
        l10n: ko.po: Update Korean translation
        l10n: zh_CN: for git v2.14.0 l10n round 2
        l10n: de.po: various fixes in German translation
        l10n: ru.po: update Russian translation
        l10n: fr.po v2.14.0 rnd 2
        l10n: fr.po Fix some french typos
        l10n: fr.po Fix typo
        l10n: fr.po Fix some translations
        l10n: de.po: update German translation
        l10n: vi.po (3213t): Updated 9 new strings
        l10n: Update Catalan translation
        l10n: bg.po: Updated Bulgarian translation (3213t)
      384a8b27
  8. 02 8月, 2017 5 次提交
  9. 01 8月, 2017 1 次提交