1. 12 11月, 2008 1 次提交
  2. 03 11月, 2008 2 次提交
  3. 02 11月, 2008 4 次提交
  4. 28 10月, 2008 2 次提交
  5. 18 10月, 2008 1 次提交
    • J
      diff: unify external diff and funcname parsing code · be58e70d
      Jeff King 提交于
      Both sets of code assume that one specifies a diff profile
      as a gitattribute via the "diff=foo" attribute. They then
      pull information about that profile from the config as
      diff.foo.*.
      
      The code for each is currently completely separate from the
      other, which has several disadvantages:
      
        - there is duplication as we maintain code to create and
          search the separate lists of external drivers and
          funcname patterns
      
        - it is difficult to add new profile options, since it is
          unclear where they should go
      
        - the code is difficult to follow, as we rely on the
          "check if this file is binary" code to find the funcname
          pattern as a side effect. This is the first step in
          refactoring the binary-checking code.
      
      This patch factors out these diff profiles into "userdiff"
      drivers. A file with "diff=foo" uses the "foo" driver, which
      is specified by a single struct.
      
      Note that one major difference between the two pieces of
      code is that the funcname patterns are always loaded,
      whereas external drivers are loaded only for the "git diff"
      porcelain; the new code takes care to retain that situation.
      Signed-off-by: NJeff King <peff@peff.net>
      Signed-off-by: NShawn O. Pearce <spearce@spearce.org>
      be58e70d
  6. 03 10月, 2008 2 次提交
    • J
      Makefile: do not set NEEDS_LIBICONV for Solaris 8 · 0e214af9
      Jeff King 提交于
      This breaks my build on Solaris 8, as there is no separate
      libiconv.
      
      The history of this line is somewhat convoluted. In 2fd955cc
      (in November 2005), NEEDS_LIBICONV was turned on for all
      Solaris builds, claiming to "fix an error in Solaris 10 by
      setting NEEDS_LIBICONV".
      
      Later, e15f5451 (in February of 2006) claimed that "Solaris
      9+ don't need iconv", and moved NEEDS_LIBICONV into a
      section for Solaris 8.
      
      Furthermore, Brandon Casey claims in
      
      <5A1KxlhmUIHe8iXPxnXYuNXsq0Yjlbwkz2eBin3z7ELuL9nK-4tSpw@cipher.nrlssc.navy.mil>
      
      that he does not set NEEDS_LIBICONV for Solaris 7.
      
      So either one of those commits is totally wrong, or there is
      some other magic going on where some Solaris installs need
      it and others don't.
      
      Given Brandon's statement and my problems on Solaris 8 with
      NEEDS_LIBICONV, I am inclined to think the first commit was
      bogus, and that NEEDS_LIBICONV shouldn't be set for Solaris
      at all by default. If somebody wants to use iconv and has
      installed it manually, they can set it in their config.mak.
      Signed-off-by: NJeff King <peff@peff.net>
      Signed-off-by: NShawn O. Pearce <spearce@spearce.org>
      0e214af9
    • D
      Solaris: Use OLD_ICONV to avoid compile warnings · 6e2dfb16
      David Soria Parra 提交于
      Solaris systems use the old styled iconv(3) call and therefore
      the OLD_ICONV variable should be set. Otherwise we get annoying compile
      warnings.
      Signed-off-by: NDavid Soria Parra <dsp@php.net>
      Acked-by: NJeff King <peff@peff.net>
      Signed-off-by: NShawn O. Pearce <spearce@spearce.org>
      6e2dfb16
  7. 01 10月, 2008 1 次提交
    • D
      cygwin: Use native Win32 API for stat · adbc0b6b
      Dmitry Potapov 提交于
      lstat/stat functions in Cygwin are very slow, because they try to emulate
      some *nix things that Git does not actually need. This patch adds Win32
      specific implementation of these functions for Cygwin.
      
      This implementation handles most situation directly but in some rare cases
      it falls back on the implementation provided for Cygwin. This is necessary
      for two reasons:
      
      - Cygwin has its own file hierarchy, so absolute paths used in Cygwin is
        not suitable to be used Win32 API. cygwin_conv_to_win32_path can not be
        used because it automatically dereference Cygwin symbol links, also it
        causes extra syscall. Fortunately Git rarely use absolute paths, so we
        always use Cygwin implementation for absolute paths.
      
      - Support of symbol links. Cygwin stores symbol links as ordinary using
        one of two possible formats. Therefore, the fast implementation falls
        back to Cygwin functions if it detects potential use of symbol links.
      
      The speed of this implementation should be the same as mingw_lstat for
      common cases, but it is considerable slower when the specified file name
      does not exist.
      
      Despite all efforts to make the fast implementation as robust as possible,
      it may not work well for some very rare situations. I am aware only one
      situation: use Cygwin mount to bind unrelated paths inside repository
      together.  Therefore, the core.ignoreCygwinFSTricks configuration option is
      provided, which controls whether native or Cygwin version of stat is used.
      Signed-off-by: NDmitry Potapov <dpotapov@gmail.com>
      Signed-off-by: NShawn O. Pearce <spearce@spearce.org>
      adbc0b6b
  8. 12 9月, 2008 1 次提交
  9. 11 9月, 2008 5 次提交
  10. 10 9月, 2008 1 次提交
  11. 09 9月, 2008 1 次提交
    • J
      Windows: git-shell can be compiled again · e705d757
      Johannes Sixt 提交于
      The reason that git-shell was excluded from the Windows build was that
      our compatibility layer needed stuff that was removed when we tried to
      link less of the git library into git-shell. Since 4cfc24af (shell: do
      not play duplicated definition games to shrink the executable,
      2008-08-19) the complete library is linked again, so we can build
      git-shell on Windows as well. (This fixes 'make install', which depends
      on that git-shell is always built.)
      Signed-off-by: NJohannes Sixt <johannes.sixt@telecom.at>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      e705d757
  12. 03 9月, 2008 1 次提交
  13. 01 9月, 2008 1 次提交
    • J
      git wrapper: DWIM mistyped commands · 8af84dad
      Johannes Schindelin 提交于
      This patch introduces a modified Damerau-Levenshtein algorithm into
      Git's code base, and uses it with the following penalties to show some
      similar commands when an unknown command was encountered:
      
      	swap = 0, insertion = 1, substitution = 2, deletion = 4
      
      A typical output would now look like this:
      
      	$ git sm
      	git: 'sm' is not a git-command. See 'git --help'.
      
      	Did you mean one of these?
      		am
      		rm
      
      The cut-off is at similarity rating 6, which was empirically determined
      to give sensible results.
      
      As a convenience, if there is only one candidate, Git continues under
      the assumption that the user mistyped it.  Example:
      
      	$ git reabse
      	WARNING: You called a Git program named 'reabse', which does
      	not exist.
      	Continuing under the assumption that you meant 'rebase'
      	[...]
      Signed-off-by: NJohannes Schindelin <johannes.schindelin@gmx.de>
      Signed-off-by: NAlex Riesen <raa.lkml@gmail.com>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      8af84dad
  14. 31 8月, 2008 1 次提交
  15. 30 8月, 2008 2 次提交
  16. 26 8月, 2008 2 次提交
    • A
      Makefile: always provide a fallback when hardlinks fail · 3e073dc5
      Andreas Färber 提交于
      We make hardlinks from "git" to "git-<cmd>" built-ins and have been
      careful to avoid cross-device links when linking "git-<cmd>" to
      gitexecdir.
      
      However, we were not prepared to deal with a build directory that is
      incapable of making hard links within itself. This patch corrects it.
      
      Instead of temporarily linking "git" to gitexecdir, directly link "git-
      add", falling back to "cp". Try hardlinking that as "git-<cmd>", falling
      back to symlinks or "cp" on error.
      
      While at it, avoid 100+ error messages from hardlink failures when we are
      going to fall back to symlinks or "cp" by redirecting the standard error
      to /dev/null.
      Signed-off-by: NAndreas Färber <andreas.faerber@web.de>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      3e073dc5
    • J
      Revert "Build-in "git-shell"" · 1e7abc59
      Junio C Hamano 提交于
      This reverts commit daa0cc9a.
      It was a stupid idea to do this; when run as a log-in shell,
      it is spawned with argv[0] set to "-git-shell", so the usual
      name-based dispatch would not work to begin with.
      1e7abc59
  17. 25 8月, 2008 1 次提交
  18. 24 8月, 2008 1 次提交
  19. 20 8月, 2008 2 次提交
  20. 19 8月, 2008 1 次提交
  21. 18 8月, 2008 1 次提交
  22. 16 8月, 2008 1 次提交
  23. 09 8月, 2008 2 次提交
  24. 03 8月, 2008 1 次提交
  25. 30 7月, 2008 2 次提交