1. 19 9月, 2007 18 次提交
  2. 18 9月, 2007 13 次提交
    • J
      contrib/fast-import: add perl version of simple example · e3490268
      Jeff King 提交于
      This is based on the git-import.sh script, but is a little
      more robust and efficient. More importantly, it should
      serve as a quick template for interfacing fast-import with
      perl scripts.
      Signed-off-by: NJeff King <peff@peff.net>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      e3490268
    • N
      contrib/fast-import: add simple shell example · 7f8cfadf
      Nguyen Thai Ngoc Duy 提交于
      This example just puts a directory under git control. It is
      significantly slower than using the git tools directly, but
      hopefully shows a bit how fast-import works.
      
        [jk: added header comments]
      Signed-off-by: NNguyễn Thái Ngọc Duy <pclouds@gmail.com>
      Signed-off-by: NJeff King <peff@peff.net>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      7f8cfadf
    • C
    • C
    • C
      rev-list --bisect: Move finding bisection into do_find_bisection. · ce0cbad7
      Christian Couder 提交于
      This factorises some code and make a big function smaller.
      Signed-off-by: NChristian Couder <chriscool@tuxfamily.org>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      ce0cbad7
    • J
      Merge branch 'cr/reset' · 9346b4e1
      Junio C Hamano 提交于
      * cr/reset:
        Simplify cache API
        An additional test for "git-reset -- path"
        Make "git reset" a builtin.
        Move make_cache_entry() from merge-recursive.c into read-cache.c
        Add tests for documented features of "git reset".
      9346b4e1
    • J
      Merge branch 'maint' · 148c6300
      Junio C Hamano 提交于
      * maint:
        Document ls-files --with-tree=<tree-ish>
        git-commit: partial commit of paths only removed from the index
        git-commit: Allow partial commit of file removal.
        send-email: make message-id generation a bit more robust
        git-gui: Disable native platform text selection in "lists"
        git-gui: Paper bag fix "Commit->Revert" format arguments
        git-gui: Provide 'uninstall' Makefile target to undo an installation
        git-gui: Font chooser to handle a large number of font families
        git-gui: Make backporting changes from i18n version easier
        git-gui: Don't delete send on Windows as it doesn't exist
        git-gui: Trim trailing slashes from untracked submodule names
        git-gui: Assume untracked directories are Git submodules
        git-gui: handle "deleted symlink" diff marker
        git-gui: show unstaged symlinks in diff viewer
        git-gui: Avoid use of libdir in Makefile
        git-gui: Disable Tk send in all git-gui sessions
        git-gui: lib/index.tcl: handle files with % in the filename properly
        git-gui: Properly set the state of "Stage/Unstage Hunk" action
        git-gui: Fix detaching current branch during checkout
        git-gui: Correct starting of git-remote to handle -w option
      148c6300
    • J
      Document ls-files --with-tree=<tree-ish> · 7a461b5a
      Junio C Hamano 提交于
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      7a461b5a
    • J
      git-commit: partial commit of paths only removed from the index · cba8d489
      Junio C Hamano 提交于
      Because a partial commit is meant to be a way to ignore what are
      staged in the index, "git rm --cached A && git commit A" should
      just record what is in A on the filesystem.  The previous patch
      made the command sequence to barf, saying that A has not been
      added yet.  This fixes it.
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      cba8d489
    • J
      git-commit: Allow partial commit of file removal. · 64586e75
      Junio C Hamano 提交于
      When making a partial commit, git-commit uses git-ls-files with
      the --error-unmatch option to expand and sanity check the user
      supplied path patterns.  When any path pattern does not match
      with the paths known to the index, it errors out, in order to
      catch a common mistake to say "git commit Makefiel cache.h"
      and end up with a commit that touches only cache.h (notice the
      misspelled "Makefile").  This detection however does not work
      well when the path has already been removed from the index.
      
      If you drop a path from the index and try to commit that
      partially, i.e.
      
      	$ git rm COPYING
      	$ git commit -m 'Remove COPYING' COPYING
      
      the command complains because git does not know anything about
      COPYING anymore.
      
      This introduces a new option --with-tree to git-ls-files and
      uses it in git-commit when we build a temporary index to
      write a tree object for the partial commit.
      
      When --with-tree=<tree-ish> option is specified, names from the
      given tree are added to the set of names the index knows about,
      so we can treat COPYING file in the example as known.
      
      Of course, there is no reason to use "git rm" and git-aware
      people have long time done:
      
      	$ rm COPYING
      	$ git commit -m 'Remove COPYING' COPYING
      
      which works just fine.  But this caused a constant confusion.
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      64586e75
    • J
      Merge branch 'jc/grep-c' into maint · a017f27d
      Junio C Hamano 提交于
      * jc/grep-c:
        Split grep arguments in a way that does not requires to add /dev/null.
      a017f27d
    • J
      Merge branch 'maint' of git://repo.or.cz/git-gui into maint · 9269df96
      Junio C Hamano 提交于
      * 'maint' of git://repo.or.cz/git-gui:
        git-gui: Disable native platform text selection in "lists"
        git-gui: Paper bag fix "Commit->Revert" format arguments
        git-gui: Provide 'uninstall' Makefile target to undo an installation
        git-gui: Font chooser to handle a large number of font families
        git-gui: Make backporting changes from i18n version easier
        git-gui: Don't delete send on Windows as it doesn't exist
        git-gui: Trim trailing slashes from untracked submodule names
        git-gui: Assume untracked directories are Git submodules
        git-gui: handle "deleted symlink" diff marker
        git-gui: show unstaged symlinks in diff viewer
        git-gui: Avoid use of libdir in Makefile
        git-gui: Disable Tk send in all git-gui sessions
        git-gui: lib/index.tcl: handle files with % in the filename properly
        git-gui: Properly set the state of "Stage/Unstage Hunk" action
        git-gui: Fix detaching current branch during checkout
        git-gui: Correct starting of git-remote to handle -w option
      9269df96
    • J
      send-email: make message-id generation a bit more robust · be510cfe
      Junio C Hamano 提交于
      Earlier code took Unix time and appended a few random digits.
      If you are firing off many messages within a second, you could
      issue the same id to different messages, which is a no-no.  If
      you send out 31 messages within a single second, with random
      integer taken out of rand(4200), you have about 10% chance of
      producing the same message ID.
      
      This fixes the problem by uses a prefix string which is
      constant-per-invocation (time and pid), with a serial number for
      each message generated by the process appended at the end.
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      be510cfe
  3. 17 9月, 2007 4 次提交
    • J
      Merge branch 'maint' · acd69176
      Junio C Hamano 提交于
      * maint:
        git-apply: fix whitespace stripping
        apply --index-info: fall back to current index for mode changes
        core-tutorial: minor cleanup
        documentation: replace Discussion section by link to user-manual chapter
        user-manual: todo updates and cleanup
        user-manual: fix introduction to packfiles
        user-manual: move packfile and dangling object discussion
        user-manual: rewrite object database discussion
        user-manual: reorder commit, blob, tree discussion
        user-manual: rewrite index discussion
        user-manual: create new "low-level git operations" chapter
        user-manual: rename "git internals" to "git concepts"
        user-manual: move object format details to hacking-git chapter
        user-manual: adjust section levels in "git internals"
        revision walker: --cherry-pick is a limited operation
        git-sh-setup: typofix in comments
      acd69176
    • J
      git-apply: fix whitespace stripping · d7416eca
      J. Bruce Fields 提交于
      The algorithm isn't right here: it accumulates any set of 8 spaces into
      tabs even if they're separated by tabs, so
      
      	<four spaces><tab><four spaces><tab>
      
      is converted to
      
      	<tab><tab><tab>
      
      when it should be just
      
      	<tab><tab>
      
      So teach git-apply that a tab hides any group of less than 8 previous
      spaces in a row.
      Signed-off-by: NJ. Bruce Fields <bfields@citi.umich.edu>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      d7416eca
    • S
      git-gui: Disable native platform text selection in "lists" · 3849bfba
      Shawn O. Pearce 提交于
      Sometimes we use a Tk text widget as though it were a listbox.
      This happens typically when we want to show an icon to the left
      of the text label or just when a text widget is generally a better
      choice then the native listbox widget.
      
      In these cases if we want the user to have control over the selection
      we implement our own "in_sel" tag that shows the selected region
      and we perform our own selection management in the background
      via keybindings and mouse bindings.  In such uses we don't want
      the user to be able to activate the native platform selection by
      dragging their mouse through the text widget.  Doing so creates a
      very confusing display and the user is left wondering what it may
      mean to have two different types of selection in the same widget.
      
      Tk doesn't allow us to delete the "sel" tag that it uses internally
      to manage the native selection but it will allow us to make it
      invisible by setting the tag to have the same display properties
      as unselected text.  So long as we don't actually use the "sel"
      tag for anything in code its effectively invisible.
      Signed-off-by: NShawn O. Pearce <spearce@spearce.org>
      3849bfba
    • J
      apply --index-info: fall back to current index for mode changes · ece7b749
      Johannes Schindelin 提交于
      "git diff" does not record index lines for pure mode changes (i.e. no
      lines changed).  Therefore, apply --index-info would call out a bogus
      error.
      
      Instead, fall back to reading the info from the current index.
      
      Incidentally, this fixes an error where git-rebase would not rebase a
      commit including a pure mode change, and changes requiring a threeway
      merge.
      
      Noticed and later tested by Chris Shoemaker.
      Signed-off-by: NJohannes Schindelin <johannes.schindelin@gmx.de>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      ece7b749
  4. 16 9月, 2007 5 次提交
    • J
      Merge branch 'maint' of git://linux-nfs.org/~bfields/git into maint · f3caeb9a
      Junio C Hamano 提交于
      * 'maint' of git://linux-nfs.org/~bfields/git:
        core-tutorial: minor cleanup
        documentation: replace Discussion section by link to user-manual chapter
        user-manual: todo updates and cleanup
        user-manual: fix introduction to packfiles
        user-manual: move packfile and dangling object discussion
        user-manual: rewrite object database discussion
        user-manual: reorder commit, blob, tree discussion
        user-manual: rewrite index discussion
        user-manual: create new "low-level git operations" chapter
        user-manual: rename "git internals" to "git concepts"
        user-manual: move object format details to hacking-git chapter
        user-manual: adjust section levels in "git internals"
      f3caeb9a
    • J
      core-tutorial: minor cleanup · a85fecaf
      J. Bruce Fields 提交于
      Revise the introduction for concision, add pointers to the tutorial and
      user manual as appropriate, delete cvsimport note from the end, as that
      work's been done elsewhere already.
      Signed-off-by: NJ. Bruce Fields <bfields@citi.umich.edu>
      a85fecaf
    • J
      documentation: replace Discussion section by link to user-manual chapter · 40dac517
      J. Bruce Fields 提交于
      The "Discussion" section has a lot of useful information, but is a
      little wordy, especially for an already-long man page, and is designed
      for an audience more of potential git hackers than users, which probably
      doesn't make as much sense as git matures.  Also, I (perhaps foolishly)
      forked a version in the user manual, which has been significantly
      rewritten in an attempt to address some of the above problems.
      
      So, remove this section and replace it by a (very terse) summary of the
      original material--my attempt at the World's Shortest Git Overview--and
      a reference to the appropriate chapter of the user manual.  It's
      unfortunate to remove something that's been in this place for a long
      time, as some people may still depend on finding it there.  But I think
      we'll want to do this some day anyway.
      
      Cc: Andreas Ericsson <ae@op5.se>
      Signed-off-by: NJ. Bruce Fields <bfields@citi.umich.edu>
      40dac517
    • J
      user-manual: todo updates and cleanup · ecd95b53
      J. Bruce Fields 提交于
      Format a couple lists.  Reminder that we may want to add submodule
      documentation some day.
      ecd95b53
    • J
      user-manual: fix introduction to packfiles · 9644ffdd
      J. Bruce Fields 提交于
      Actually I don't think we've previously mentioned .git/objects, so we
      need a different introduction here.
      Signed-off-by: NJ. Bruce Fields <bfields@citi.umich.edu>
      9644ffdd