1. 17 5月, 2008 2 次提交
  2. 15 5月, 2008 11 次提交
    • J
      Merge git://repo.or.cz/git-gui · 1fbb58b4
      Junio C Hamano 提交于
      * git://repo.or.cz/git-gui:
        git-gui: Delete branches with 'git branch -D' to clear config
        git-gui: Setup branch.remote,merge for shorthand git-pull
        git-gui: Update German translation
        git-gui: Don't use '$$cr master' with aspell earlier than 0.60
        git-gui: Report less precise object estimates for database compression
      1fbb58b4
    • C
      Documentation/git-prune.txt: document unpacked logic · 58949bb1
      Chris Frey 提交于
      Clarifies the git-prune man page, documenting that it only
      prunes unpacked objects.
      Signed-off-by: NChris Frey <cdfrey@foursquare.net>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      58949bb1
    • J
      Merge git://git.kernel.org/pub/scm/gitk/gitk · c7ea4536
      Junio C Hamano 提交于
      * git://git.kernel.org/pub/scm/gitk/gitk: (44 commits)
        gitk: Add a progress bar for checking out a head
        gitk: Show current row number and total number of rows
        gitk: Allow users to view diffs in external diff viewer
        gitk: Synchronize highlighting in file view for 'f' and 'b' commands
        gitk: Make updates go faster
        gitk: Disable "Reset %s branch to here" when on a detached head
        gitk: German translation again updated
        gitk: Update German translation
        gitk: Makefile/install: force permissions when installing files and dirs
        gitk: Initial Swedish translation.
        gitk: Spanish translation of gitk
        gitk: Fix handling of tree file list with special chars in names
        gitk: Reorganize processing of arguments for git log
        gitk: Fix problem with target row not being in scroll region
        gitk: Avoid a crash in selectline if commitinfo($id) isn't set
        gitk: Fix some corner cases in computing vrowmod and displayorder
        gitk: Correct a few strings and comments to say "git log"
        gitk: Don't filter view arguments through git rev-parse
        gitk: Fix problems with target row stuff
        gitk: Handle updating with path limiting better
        ...
      c7ea4536
    • J
      Merge branch 'maint' · 4b172de8
      Junio C Hamano 提交于
      * maint:
        Documentation/git-describe.txt: make description more readable
      4b172de8
    • J
      Merge branch 'maint-1.5.4' into maint · a473445a
      Junio C Hamano 提交于
      * maint-1.5.4:
        Documentation/git-describe.txt: make description more readable
      a473445a
    • J
      Merge branch 'sb/committer' · b66ae795
      Junio C Hamano 提交于
      * sb/committer:
        commit: Show committer if automatic
        commit: Show author if different from committer
        Preparation to call determine_author_info from prepare_to_commit
      b66ae795
    • J
      Merge branch 'bd/tests' · 761adeb4
      Junio C Hamano 提交于
      * bd/tests:
        Rename the test trash directory to contain spaces.
        Fix tests breaking when checkout path contains shell metacharacters
        Don't use the 'export NAME=value' in the test scripts.
        lib-git-svn.sh: Fix quoting issues with paths containing shell metacharacters
        test-lib.sh: Fix some missing path quoting
        Use test_set_editor in t9001-send-email.sh
        test-lib.sh: Add a test_set_editor function to safely set $VISUAL
        git-send-email.perl: Handle shell metacharacters in $EDITOR properly
        config.c: Escape backslashes in section names properly
        git-rebase.sh: Fix --merge --abort failures when path contains whitespace
      
      Conflicts:
      
      	t/t9115-git-svn-dcommit-funky-renames.sh
      761adeb4
    • J
      Merge branch 'mv/format-cc' · 486d1a56
      Junio C Hamano 提交于
      * mv/format-cc:
        Add tests for sendemail.cc configuration variable
        git-send-email: add a new sendemail.cc configuration variable
        git-format-patch: add a new format.cc configuration variable
      486d1a56
    • J
      Merge branch 'cc/hooks-doc' · 29182f7d
      Junio C Hamano 提交于
      * cc/hooks-doc:
        Documentation: rename "hooks.txt" to "githooks.txt" and make it a man page
      29182f7d
    • J
      Merge branch 'jk/renamelimit' (early part) · adf59ec1
      Junio C Hamano 提交于
      * 'jk/renamelimit' (early part):
        diff: make "too many files" rename warning optional
        bump rename limit defaults
        add merge.renamelimit config option
      adf59ec1
    • I
      Documentation/git-describe.txt: make description more readable · b7893cde
      Ian Hilt 提交于
      Signed-off-by: NIan Hilt <ian.hilt@gmail.com>
      Credit-to: Kevin Ballard <kevin@sb.org>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      b7893cde
  3. 14 5月, 2008 4 次提交
    • J
      filter-branch: fix variable export logic · 0bdf93cb
      Jeff King 提交于
      filter-branch tries to restore "old" copies of some
      environment variables by using the construct:
      
        unset var
        test -z "$old_var" || var="$old_var" && export var
      
      This is just wrong.  AND-list and OR-list operators && and || have equal
      precedence and they bind left to right.  The second term, var="$old"
      assignment always succeeds, so we always end up exporting var.
      
      On bash and dash, exporting an unset variable has no effect. However, on
      some shells (such as FreeBSD's /bin/sh), the shell exports the empty
      value.
      
      This manifested itself in this case as git-filter-branch setting
      GIT_INDEX_FILE to the empty string, which in turn caused its call to
      git-read-tree to fail, leaving the working tree pointing at the original
      HEAD instead of the rewritten one.
      
      To fix this, we change the short-circuit logic to better match the intent:
      
        test -z "$old_var" || {
          var="$old_var" && export var
        }
      Signed-off-by: NJeff King <peff@peff.net>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      0bdf93cb
    • J
      clone: bsd shell portability fix · 6d9878cc
      Jeff King 提交于
      When using /bin/sh from FreeBSD 6.1, the value of $? is lost
      when calling a function inside the 'trap' action. This
      resulted in clone erroneously indicating success when it
      should have reported failure.
      
      As a workaround, we save the value of $? before calling any
      functions.
      Signed-off-by: NJeff King <peff@peff.net>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      6d9878cc
    • J
      t5000: tar portability fix · 30684dfa
      Jeff King 提交于
      The output of 'tar tv' varies from system to system. In
      particular, the t5000 was expecting to parse the date from
      something like:
      
        -rw-rw-r-- root/root         0 2008-05-13 04:27 file
      
      but FreeBSD's tar produces this:
      
        -rw-rw-r--  0 root   root        0 May 13 04:27 file
      
      Instead of relying on tar's output, let's just extract the
      file using tar and stat the result using perl.
      Signed-off-by: NJeff King <peff@peff.net>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      30684dfa
    • J
      fix bsd shell negation · bbf08124
      Jeff King 提交于
      On some shells (notably /bin/sh on FreeBSD 6.1), the
      construct
      
        foo && ! bar | baz
      
      is true if
      
        foo && baz
      
      whereas for most other shells (such as bash) is true if
      
        foo && ! baz
      
      We can work around this by specifying
      
        foo && ! (bar | baz)
      
      which works everywhere.
      Signed-off-by: NJeff King <peff@peff.net>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      bbf08124
  4. 13 5月, 2008 2 次提交
  5. 12 5月, 2008 16 次提交
  6. 11 5月, 2008 5 次提交
    • P
      gitk: Show current row number and total number of rows · 6df7403a
      Paul Mackerras 提交于
      This adds a couple of fields in the bar just below the upper panes
      that show the row number of the currently selected commit, and how
      many rows are displayed in total.  The latter increments as commits
      are read in, and thus functions to show that progress is being made.
      This therefore also removes the code that showed progress using a
      green oscillating bar in the progress bar window (which some people
      disliked).
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      6df7403a
    • L
      Optimize symlink/directory detection · c40641b7
      Linus Torvalds 提交于
      This is the base for making symlink detection in the middle fo a pathname
      saner and (much) more efficient.
      
      Under various loads, we want to verify that the full path leading up to a
      filename is a real directory tree, and that when we successfully do an
      'lstat()' on a filename, we don't get a false positive due to a symlink in
      the middle of the path that git should have seen as a symlink, not as a
      normal path component.
      
      The 'has_symlink_leading_path()' function already did this, and cached
      a single level of symlink information, but didn't cache the _lack_ of a
      symlink, so the normal behaviour was actually the wrong way around, and we
      ended up doing an 'lstat()' on each path component to check that it was a
      real directory.
      
      This caches the last detected full directory and symlink entries, and
      speeds up especially deep directory structures a lot by avoiding to
      lstat() all the directories leading up to each entry in the index.
      
      [ This can - and should - probably be extended upon so that we eventually
        never do a bare 'lstat()' on any path entries at *all* when checking the
        index, but always check the full path carefully. Right now we do not
        generally check the whole path for all our normal quick index
        revalidation.
      
        We should also make sure that we're careful about all the invalidation,
        ie when we remove a link and replace it by a directory we should
        invalidate the symlink cache if it matches (and vice versa for the
        directory cache).
      
        But regardless, the basic function needs to be sane to do that. The old
        'has_symlink_leading_path()' was not capable enough - or indeed the code
        readable enough - to really do that sanely. So I'm pushing this as not
        just an optimization, but as a base for further work. ]
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      c40641b7
    • L
      Avoid some unnecessary lstat() calls · d177cab0
      Linus Torvalds 提交于
      The commit sequence used to do
      
      	if (file_exists(p->path))
      		add_file_to_cache(p->path, 0);
      
      where both "file_exists()" and "add_file_to_cache()" needed to do a
      lstat() on the path to do their work.
      
      This cuts down 'lstat()' calls for the partial commit case by two
      for each path we know about (because we do this twice per path).
      
      Just move the lstat() to the caller instead (that's all that
      "file_exists()" really does), and pass the stat information down to the
      add_to_cache() function.
      
      This essentially makes 'add_to_index()' the core function that adds a path
      to the index, getting the index pointer, the pathname and the stat
      information as arguments. There are then shorthand helper functions that
      use this core function:
      
       - 'add_to_cache()' is just 'add_to_index()' with the default index
      
       - 'add_file_to_cache/index()' is the same, but does the lstat() call
         itself, so you can pass just the pathname if you don't already have the
         stat information available.
      
      So old users of the 'add_file_to_xyzzy()' are essentially left unchanged,
      and this just exposes the more generic helper function that can take
      existing stat information into account.
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      d177cab0
    • J
      Merge branch 'py/diff-submodule' · 2855e70a
      Junio C Hamano 提交于
      * py/diff-submodule:
        is_racy_timestamp(): do not check timestamp for gitlinks
        diff-lib.c: rename check_work_tree_entity()
        diff: a submodule not checked out is not modified
        Add t7506 to test submodule related functions for git-status
        t4027: test diff for submodule with empty directory
      2855e70a
    • J
      Merge branch 'lt/case-insensitive' · 380a7426
      Junio C Hamano 提交于
      * lt/case-insensitive:
        Make git-add behave more sensibly in a case-insensitive environment
        When adding files to the index, add support for case-independent matches
        Make unpack-tree update removed files before any updated files
        Make branch merging aware of underlying case-insensitive filsystems
        Add 'core.ignorecase' option
        Make hash_name_lookup able to do case-independent lookups
        Make "index_name_exists()" return the cache_entry it found
        Move name hashing functions into a file of its own
        Make unpack_trees_options bit flags actual bitfields
      380a7426