1. 25 1月, 2019 1 次提交
  2. 15 1月, 2019 4 次提交
  3. 12 11月, 2018 2 次提交
  4. 06 11月, 2018 1 次提交
  5. 01 11月, 2018 4 次提交
  6. 22 9月, 2018 2 次提交
  7. 18 9月, 2018 1 次提交
  8. 30 8月, 2018 3 次提交
    • E
      am: avoid directory rename detection when calling recursive merge machinery · 6aba117d
      Elijah Newren 提交于
      Let's say you have the following three trees, where Base is from one commit
      behind either master or branch:
      
         Base  : bar_v1, foo/{file1, file2, file3}
         branch: bar_v2, foo/{file1, file2},       goo/file3
         master: bar_v3, foo/{file1, file2, file3}
      
      Using git-am (or am-based rebase) to apply the changes from branch onto
      master results in the following tree:
      
         Result: bar_merged, goo/{file1, file2, file3}
      
      This is not what users want; they did not rename foo/ -> goo/, they only
      renamed one file within that directory.  The reason this happens is am
      constructs fake trees (via build_fake_ancestor()) of the following form:
      
         Base_bfa  : bar_v1, foo/file3
         branch_bfa: bar_v2, goo/file3
      
      Combining these two trees with master's tree:
      
         master: bar_v3, foo/{file1, file2, file3},
      
      You can see that merge_recursive_generic() would see branch_bfa as renaming
      foo/ -> goo/, and master as just adding both foo/file1 and foo/file2.  As
      such, it ends up with goo/{file1, file2, file3}
      
      The core problem is that am does not have access to the original trees; it
      can only construct trees using the blobs involved in the patch.  As such,
      it is not safe to perform directory rename detection within am -3.
      Signed-off-by: NElijah Newren <newren@gmail.com>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      6aba117d
    • R
      mailinfo: support format=flowed · 3aa4d81f
      René Scharfe 提交于
      Add best-effort support for patches sent using format=flowed (RFC 3676).
      Remove leading spaces ("unstuff"), remove soft line breaks (indicated
      by space + newline), but leave the signature separator (dash dash space
      newline) alone.
      
      Warn in git am when encountering a format=flowed patch, because any
      trailing spaces would most probably be lost, as the sending MUA is
      encouraged to remove them when preparing the email.
      
      Provide a test patch formatted by Mozilla Thunderbird 60 using its
      default configuration.  It reuses the contents of the file mailinfo.c
      before and after this patch.
      Signed-off-by: NRene Scharfe <l.s.r@web.de>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      3aa4d81f
    • J
      convert "oidcmp() == 0" to oideq() · 4a7e27e9
      Jeff King 提交于
      Using the more restrictive oideq() should, in the long run,
      give the compiler more opportunities to optimize these
      callsites. For now, this conversion should be a complete
      noop with respect to the generated code.
      
      The result is also perhaps a little more readable, as it
      avoids the "zero is equal" idiom. Since it's so prevalent in
      C, I think seasoned programmers tend not to even notice it
      anymore, but it can sometimes make for awkward double
      negations (e.g., we can drop a few !!oidcmp() instances
      here).
      
      This patch was generated almost entirely by the included
      coccinelle patch. This mechanical conversion should be
      completely safe, because we check explicitly for cases where
      oidcmp() is compared to 0, which is what oideq() is doing
      under the hood. Note that we don't have to catch "!oidcmp()"
      separately; coccinelle's standard isomorphisms make sure the
      two are treated equivalently.
      
      I say "almost" because I did hand-edit the coccinelle output
      to fix up a few style violations (it mostly keeps the
      original formatting, but sometimes unwraps long lines).
      Signed-off-by: NJeff King <peff@peff.net>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      4a7e27e9
  9. 14 8月, 2018 1 次提交
  10. 12 7月, 2018 1 次提交
  11. 04 7月, 2018 1 次提交
  12. 30 6月, 2018 2 次提交
  13. 29 5月, 2018 1 次提交
  14. 24 5月, 2018 1 次提交
  15. 06 5月, 2018 1 次提交
    • J
      Replace all die("BUG: ...") calls by BUG() ones · 033abf97
      Johannes Schindelin 提交于
      In d8193743 (usage.c: add BUG() function, 2017-05-12), a new macro
      was introduced to use for reporting bugs instead of die(). It was then
      subsequently used to convert one single caller in 588a538a
      (setup_git_env: convert die("BUG") to BUG(), 2017-05-12).
      
      The cover letter of the patch series containing this patch
      (cf 20170513032414.mfrwabt4hovujde2@sigill.intra.peff.net) is not
      terribly clear why only one call site was converted, or what the plan
      is for other, similar calls to die() to report bugs.
      
      Let's just convert all remaining ones in one fell swoop.
      
      This trick was performed by this invocation:
      
      	sed -i 's/die("BUG: /BUG("/g' $(git grep -l 'die("BUG' \*.c)
      Signed-off-by: NJohannes Schindelin <johannes.schindelin@gmx.de>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      033abf97
  16. 02 5月, 2018 1 次提交
  17. 11 4月, 2018 1 次提交
  18. 27 3月, 2018 1 次提交
  19. 15 3月, 2018 1 次提交
  20. 15 2月, 2018 1 次提交
  21. 13 2月, 2018 3 次提交
  22. 31 1月, 2018 1 次提交
  23. 17 1月, 2018 1 次提交
  24. 23 12月, 2017 1 次提交
  25. 08 12月, 2017 1 次提交
  26. 13 11月, 2017 1 次提交
  27. 06 11月, 2017 1 次提交