1. 07 3月, 2007 1 次提交
  2. 06 3月, 2007 21 次提交
    • J
      revision --boundary: fix uncounted case. · 8839ac94
      Junio C Hamano 提交于
      When the list is truly limited and get_revision_1() returned NULL,
      the code incorrectly returned it without switching to boundary emiting
      mode.  Silly.
      Signed-off-by: NJunio C Hamano <junkio@cox.net>
      8839ac94
    • J
      revision --boundary: fix stupid typo · 892ae6bf
      Junio C Hamano 提交于
      Signed-off-by: NJunio C Hamano <junkio@cox.net>
      892ae6bf
    • J
      git-bundle: make verify a bit more chatty. · 80e25cee
      Junio C Hamano 提交于
      Signed-off-by: NJunio C Hamano <junkio@cox.net>
      80e25cee
    • J
      revision traversal: SHOWN means shown · c33d8593
      Junio C Hamano 提交于
      This moves the code to set SHOWN on the commit from get_revision_1()
      back to get_revision(), so that the bit means what it originally
      meant: this commit has been given back to the caller.
      
      Also it fixes the --reverse breakage Dscho pointed out.
      Signed-off-by: NJunio C Hamano <junkio@cox.net>
      c33d8593
    • J
      git-bundle: various fixups · c2dea5a1
      Junio C Hamano 提交于
      verify_bundle() returned with an error early only when all
      prerequisite commits were missing.  It should error out much
      earlier when some are missing.
      
      When the rev-list is limited in ways other than revision range
      (e.g. --max-count or --max-age), create_bundle() listed all
      positive refs given from the command line as if they are
      available, but resulting pack may not have some of them.  Add a
      logic to make sure all of them are included, and error out
      otherwise.
      Signed-off-by: NJunio C Hamano <junkio@cox.net>
      c2dea5a1
    • J
      revision traversal: retire BOUNDARY_SHOW · 2b064697
      Junio C Hamano 提交于
      This removes the flag internally used by revision traversal to
      decide which commits are indeed boundaries and renames it to
      CHILD_SHOWN.  builtin-bundle uses the symbol for its
      verification, but I think the logic it uses it is wrong.  The
      flag is still useful but it is local to the git-bundle, so it is
      renamed to PREREQ_MARK.
      Signed-off-by: NJunio C Hamano <junkio@cox.net>
      2b064697
    • J
      revision walker: Fix --boundary when limited · 86ab4906
      Junio C Hamano 提交于
      This cleans up the boundary processing in the commit walker.  It
      
       - rips out the boundary logic from the commit walker. Placing
         "negative" commits in the revs->commits list was Ok if all we
         cared about "boundary" was the UNINTERESTING limiting case,
         but conceptually it was wrong.
      
       - makes get_revision_1() function to walk the commits and return
         the results as if there is no funny postprocessing flags such
         as --reverse, --skip nor --max-count.
      
       - makes get_revision() function the postprocessing phase:
      
         If reverse is given, wait for get_revision_1() to give
         everything that it would normally give, and then reverse it
         before consuming.
      
         If skip is given, skip that many before going further.
      
         If max is given, stop when we gave out that many.
      
         Now that we are about to return one positive commit, mark
         the parents of that commit to be potential boundaries
         before returning, iff we are doing the boundary processing.
      
         Return the commit.
      
       - After get_revision() finishes giving out all the positive
         commits, if we are doing the boundary processing, we look at
         the parents that we marked as potential boundaries earlier,
         see if they are really boundaries, and give them out.
      
      It loses more code than it adds, even when the new gc_boundary()
      function, which is purely for early optimization, is counted.
      
      Note that this patch is purely for eyeballing and discussion
      only.  It breaks git-bundle's verify logic because the logic
      does not use BOUNDARY_SHOW flag for its internal computation
      anymore.  After we correct it not to attempt to affect the
      boundary processing by setting the BOUNDARY_SHOW flag, we can
      remove BOUNDARY_SHOW from revision.h and use that bit assignment
      for the new CHILD_SHOWN flag.
      Signed-off-by: NJunio C Hamano <junkio@cox.net>
      86ab4906
    • J
      Merge branch 'maint' · ba66c586
      Junio C Hamano 提交于
      * maint:
        git-gui: Make 'make' quieter by default
        git-gui: Remove unnecessary /dev/null redirection.
        git-gui: Don't create empty (same tree as parent) commits.
        git-gui: Add Reset to the Branch menu.
        git-gui: Relocate the menu/transport menu code.
      ba66c586
    • J
      Merge branch 'master' of git://repo.or.cz/git-gui into maint · eec10252
      Junio C Hamano 提交于
      * 'master' of git://repo.or.cz/git-gui:
        git-gui: Make 'make' quieter by default
        git-gui: Remove unnecessary /dev/null redirection.
        git-gui: Don't create empty (same tree as parent) commits.
        git-gui: Add Reset to the Branch menu.
        git-gui: Relocate the menu/transport menu code.
      eec10252
    • J
      git-bundle: fix pack generation. · c044aa18
      Junio C Hamano 提交于
      The handcrafted built-in rev-list lookalike forgot to mark the trees
      and blobs contained in the boundary commits uninteresting, resulting
      in unnecessary objects in the pack.
      Signed-off-by: NJunio C Hamano <junkio@cox.net>
      c044aa18
    • S
      git-gui: Make 'make' quieter by default · 0b5ea163
      Shawn O. Pearce 提交于
      To fit nicely into the output of the git.git project's own quieter
      Makefile, we want to make the git-gui Makefile nice and quiet too.
      Signed-off-by: NShawn O. Pearce <spearce@spearce.org>
      0b5ea163
    • J
      Merge branch 'maint' · 31930b5b
      Junio C Hamano 提交于
      * maint:
        git-commit: cd to top before showing the final stat
      31930b5b
    • J
      c93d88a5
    • J
      Merge branch 'master-for-junio' of git://repo.or.cz/git/fastimport; branch 'maint' · 99e6ac50
      Junio C Hamano 提交于
      * 'master-for-junio' of git://repo.or.cz/git/fastimport:
        fast-import: Fail if a non-existant commit is used for merge
        fast-import: Avoid infinite loop after reset
      
      * maint:
        Fix diff-options references in git-diff and git-format-patch
        Add definition of <commit-ish> to the main git man page.
        Begin SubmittingPatches with a check list
        fast-import: Fail if a non-existant commit is used for merge
        fast-import: Avoid infinite loop after reset
      99e6ac50
    • B
      Fix diff-options references in git-diff and git-format-patch · b8105375
      Brian Gernhardt 提交于
      Most of the git-diff-* documentation used [<common diff options>]
      instead of [--diff-options], so make that change in git-diff and
      git-format-patch.
      
      In addition, git-format-patch didn't include the meanings of the diff
      options.
      Signed-off-by: NBrian Gernhardt <benji@silverinsanity.com>
      Signed-off-by: NJunio C Hamano <junkio@cox.net>
      b8105375
    • T
      043d7605
    • J
      Merge branch 'maint-for-junio' of git://repo.or.cz/git/fastimport into maint · c2d4eb7e
      Junio C Hamano 提交于
      * 'maint-for-junio' of git://repo.or.cz/git/fastimport:
        fast-import: Fail if a non-existant commit is used for merge
        fast-import: Avoid infinite loop after reset
      c2d4eb7e
    • J
      Begin SubmittingPatches with a check list · 56333bac
      Johannes Schindelin 提交于
      It seems that some people prefer a short list to a long text. But even for
      the latter group, a quick reminder list is useful. So, add a check list to
      Documentation/SubmittingPatches of what to do to get your patch accepted.
      Signed-off-by: NJohannes Schindelin <Johannes.Schindelin@gmx.de>
      Signed-off-by: NJunio C Hamano <junkio@cox.net>
      56333bac
    • S
      Merge branch 'maint' · 6b4318e6
      Shawn O. Pearce 提交于
      * maint:
        fast-import: Fail if a non-existant commit is used for merge
        fast-import: Avoid infinite loop after reset
      
      [sp: Minor evil merge to deal with type_names array moving
       to be private in 'master'.]
      6b4318e6
    • S
      fast-import: Fail if a non-existant commit is used for merge · 2f6dc35d
      Shawn O. Pearce 提交于
      Johannes Sixt noticed during one of his own imports that fast-import
      did not fail if a non-existant commit is referenced by SHA-1 value
      as an argument to the 'merge' command.  This allowed the user to
      unknowingly create commits that would fail in fsck, as the commit
      contents would not be completely reachable.
      
      A side effect of this bug was that a frontend process could mark
      any SHA-1 object (blob, tree, tag) as a parent of a merge commit.
      This should also fail in fsck, as the commit is not a valid commit.
      
      We now use the same rule as the 'from' command.  If a commit is
      referenced in the 'merge' command by hex formatted SHA-1 then the
      SHA-1 must be a commit or a tag that can be peeled back to a commit,
      the commit must already exist, and must be readable by the core Git
      infrastructure code.  This requirement means that the commit must
      have existed prior to fast-import starting, or the commit must have
      been flushed out by a prior 'checkpoint' command.
      Signed-off-by: NShawn O. Pearce <spearce@spearce.org>
      2f6dc35d
    • S
      fast-import: Avoid infinite loop after reset · 734c91f9
      Shawn O. Pearce 提交于
      Johannes Sixt noticed that a 'reset' command applied to a branch that
      is already active in the branch LRU cache can cause fast-import to
      relink the same branch into the LRU cache twice.  This will cause
      the LRU cache to contain a cycle, making unload_one_branch run in an
      infinite loop as it tries to select the oldest branch for eviction.
      
      I have trivially fixed the problem by adding an active bit to
      each branch object; this bit indicates if the branch is already
      in the LRU and allows us to avoid trying to add it a second time.
      Converting the pack_id field into a bitfield makes this change take
      up no additional memory.
      Signed-off-by: NShawn O. Pearce <spearce@spearce.org>
      734c91f9
  3. 05 3月, 2007 14 次提交
  4. 04 3月, 2007 4 次提交