1. 05 7月, 2007 11 次提交
  2. 04 7月, 2007 11 次提交
  3. 03 7月, 2007 13 次提交
    • J
      2ecf3cee
    • J
      fcb10a96
    • J
      Rewrite "git-frotz" to "git frotz" · 5be60078
      Junio C Hamano 提交于
      This uses the remove-dashes target to replace "git-frotz" to "git frotz".
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      5be60078
    • L
      Start deprecating "git-command" in favor of "git command" · 36e5e70e
      Linus Torvalds 提交于
      I realize that a lot of people use the "git-xyzzy" format, and we have
      various historical reasons for it, but I also think that most people have
      long since started thinking of the git command as a single command with
      various subcommands, and we've long had the documentation talk about it
      that way.
      
      Slowly migrating away from the git-xyzzy format would allow us to
      eventually no longer install hundreds of binaries (even if most of them
      are symlinks or hardlinks) in users $PATH, and the _original_ reasons for
      it (implementation issues and bash completion) are really long long gone.
      
      Using "git xyzzy" also has some fundamental advantages, like the ability
      to specify things like paging ("git -p xyzzy") and making the whole notion
      of aliases act like other git commands (which they already do, but they do
      *not* have a "git-xyzzy" form!)
      
      Anyway, while actually removing the "git-xyzzy" things is not practical
      right now, we can certainly start slowly to deprecate it internally inside
      git itself - in the shell scripts we use, and the test vectors.
      
      This patch adds a "remove-dashes" makefile target, which does that. It
      isn't particularly efficient or smart, but it *does* successfully rewrite
      a lot of our shell scripts to use the "git xyzzy" form for all built-in
      commands.
      
      (For non-builtins, the "git xyzzy" format implies an extra execve(), so
      this script leaves those alone).
      
      So apply this patch, and then run
      
      	make remove-dashes
      	make test
      	git commit -a
      
      to generate a much larger patch that actually starts this transformation.
      
      (The only half-way subtle thing about this is that it also fixes up
      git-filter-branch.sh for the new world order by adding quoting around
      the use of "git-commit-tree" as an argument. It doesn't need it in that
      format, but when changed into "git commit-tree" it is no longer a single
      word, and the quoting maintains the old behaviour).
      
      NOTE! This does not yet mean that you can actually stop installing the
      "git-xyzzy" binaries for the builtins. There are some remaining places
      that want to use the old form, this just removes the most obvious ones
      that can easily be done automatically.
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      36e5e70e
    • J
      Merge branch 'jo/init' · 3b0d9992
      Junio C Hamano 提交于
      * jo/init:
        Quiet the output from git-init when cloning, if requested.
        Add an option to quiet git-init.
      3b0d9992
    • J
      git-fsck: add --lost-found option · 68f6c019
      Johannes Schindelin 提交于
      With this option, dangling objects are not only reported, but also
      written to .git/lost-found/commit/ or .git/lost-found/other/. This
      option implies '--full' and '--no-reflogs'.
      
      'git fsck --lost-found' is meant as a replacement for git-lost-found.
      Signed-off-by: NJohannes Schindelin <johannes.schindelin@gmx.de>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      68f6c019
    • J
      Merge branch 'maint' · 1a6f3999
      Junio C Hamano 提交于
      * maint:
        Correctly document the name of the global excludes file configuration
      1a6f3999
    • A
      format-patch: Add format.subjectprefix config option · dbd21447
      Adam Roben 提交于
      This change lets you use the format.subjectprefix config option to override the
      default subject prefix.
      Signed-off-by: NAdam Roben <aroben@apple.com>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      dbd21447
    • J
      Test 'git add' for unmerged entries when core.symlinks=false. · 05dcd698
      Johannes Sixt 提交于
      In 20314271 git add was fixed if unmerged
      entries are in the index and core.filemode=false. core.symlinks=false is
      a similar case, which touches the same code path. Here is a test that
      makes sure that the symlink property in the index is preserved, too.
      Signed-off-by: NJohannes Sixt <johannes.sixt@telecom.at>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      05dcd698
    • J
      "git-push $URL" without refspecs pushes only matching branches · 098e711e
      Junio C Hamano 提交于
      When "git push" is run without any refspec (neither on the
      command line nor in the config), we used to push "matching refs"
      in the sense that anything under refs/ hierarchy that exist on
      both ends were updated.  This used to be a sane default for
      publishing your repository to another back when we did not have
      refs/remotes/ hierarchy, but it does not make much sense these
      days.
      
      This changes the semantics to push only "matching branches".
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      098e711e
    • M
    • J
      Merge branch 'maint' · b941ffac
      Junio C Hamano 提交于
      * maint:
        Make git-prune submodule aware (and fix a SEGFAULT in the process)
      b941ffac
    • A
      Make git-prune submodule aware (and fix a SEGFAULT in the process) · 8d2244ba
      Andy Parkins 提交于
      I ran git-prune on a repository and got this:
      
       $ git-prune
       error: Object 228f8065b930120e35fc0c154c237487ab02d64a is a blob, not a commit
       Segmentation fault (core dumped)
      
      This repository was a strange one in that it was being used to provide
      its own submodule.  That is, the repository was cloned into a
      subdirectory, an independent branch checked out in that subdirectory,
      and then it was marked as a submodule.  git-prune then failed in the
      above manner.
      
      The problem was that git-prune was not submodule aware in two areas.
      
      Linus said:
      
       > So what happens is that something traverses a tree object, looks at each
       > entry, sees that it's not a tree, and tries to look it up as a blob. But
       > subprojects are commits, not blobs, and then when you look at the object
       > more closely, you get the above kind of object type confusion.
      
      and included a patch to add an S_ISGITLINK() test to reachable.c's
      process_tree() function.  That fixed the first git-prune error, and
      stopped it from trying to process the gitlink entries in trees as if
      they were pointers to other trees (and of course failing, because
      gitlinks _aren't_ trees).  That part of this patch is his.
      
      The second area is add_cache_refs().  This is called before starting the
      reachability analysis, and was calling lookup_blob() on every object
      hash found in the index.  However, it is no longer true that every hash
      in the index is a pointer to a blob, some of them are gitlinks, and are
      not backed by any object at all, they are commits in another repository.
      Normally this bug was not causing any problems, but in the case of the
      self-referencing repository described above, it meant that the gitlink
      hash was being marked as being of type OBJ_BLOB by add_cache_refs() call
      to lookup_blob().  Then later, because that hash was also pointed to by
      a ref, add_one_ref() would treat it as a commit; lookup_commit() would
      return a NULL because that object was already noted as being an
      OBJ_BLOB, not an OBJ_COMMIT; and parse_commit_buffer() would SEGFAULT on
      that NULL pointer.
      
      The fix made by this patch is to not blindly call lookup_blob() in
      reachable.c's add_cache_refs(), and instead skip any index entries that
      are S_ISGITLINK().
      Signed-off-by: NAndy Parkins <andyparkins@gmail.com>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      8d2244ba
  4. 02 7月, 2007 5 次提交
    • J
      Merge branch 'ew/svn' · 1fd81efa
      Junio C Hamano 提交于
      * ew/svn:
        git-svn: allow dcommit to retain local merge information
      1fd81efa
    • J
      Merge branch 'ns/stash' · 7425dcc9
      Junio C Hamano 提交于
      * ns/stash:
        Documentation: quote {non-attributes} for asciidoc
        git-stash: don't complain when listing in a repo with no stash
        git-stash: fix "can't shift that many" with no arguments
        git-stash: fix "no arguments" case in documentation
        git-stash: require "save" to be explicit and update documentation
        Document git-stash
        Add git-stash script
      7425dcc9
    • J
      Merge branch 'js/rebase' · f36db549
      Junio C Hamano 提交于
      * js/rebase:
        Teach rebase -i about --preserve-merges
        rebase -i: provide reasonable reflog for the rebased branch
        rebase -i: several cleanups
        ignore git-rebase--interactive
        Teach rebase an interactive mode
        Move the pick_author code to git-sh-setup
      f36db549
    • J
      Merge branch 'jc/diffcore' · e1bc8dc6
      Junio C Hamano 提交于
      * jc/diffcore:
        diffcore-delta.c: Ignore CR in CRLF for text files
        diffcore-delta.c: update the comment on the algorithm.
        diffcore_filespec: add is_binary
        diffcore_count_changes: pass diffcore_filespec
      e1bc8dc6
    • J
      Documentation: minor cleanups to branch/checkout wording · 792d2370
      Jeff King 提交于
      Change "to made" to "made to", which is a typo. Use "reflog"
      instead of "ref log", which is used elsewhere throughout the
      documentation.
      Signed-off-by: NJeff King <peff@peff.net>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      792d2370