Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Commits on Feb 29, 2008
  1. @peff @gitster

    use build-time SHELL_PATH in test scripts

    peff authored gitster committed
    The top-level Makefile now creates a GIT-BUILD-OPTIONS file
    which stores any options selected by the make process that
    may be of use to further parts of the build process.
    Specifically, we store the SHELL_PATH so that it can be used
    by tests to construct shell scripts on the fly.
    The format of the GIT-BUILD-OPTIONS file is Bourne shell,
    and it is sourced by; all tests can rely on just
    having $SHELL_PATH correctly set in the environment.
    The GIT-BUILD-OPTIONS file is written every time the
    toplevel 'make' is invoked. Since the only users right now
    are the test scripts, there's no drawback to updating its
    timestamp. If something build-related depends on this, we
    can do a trick similar to the one used by GIT-CFLAGS.
    Signed-off-by: Jeff King <>
    Signed-off-by: Junio C Hamano <>
Commits on Feb 10, 2008
  1. @dscho @gitster

    Adjust .gitignore for 5884f1(Rename ''...)

    dscho authored gitster committed
    Since git-help--browse was renamed, we should ignore git-web--browse
    Signed-off-by: Johannes Schindelin <>
    Signed-off-by: Junio C Hamano <>
Commits on Dec 21, 2007
  1. @hashpling @gitster

    Remove old generated files from .gitignore.

    hashpling authored gitster committed
    Some entries in .gitignore are obselete.  These should be cleaned up
    just for the sake of general tidiness and so that any developers who
    have a working tree that was moved forward without a clean know that
    they have old stuff in their work tree.
    Signed-off-by: Charles Bailey <>
    Signed-off-by: Junio C Hamano <>
Commits on Dec 16, 2007
  1. @peff @gitster

    rename git-browse--help to git-help--browse

    peff authored gitster committed
    The convention for helper scripts has been
    git-$TOOL--$HELPER. Since this is a "browse" helper for the
    "help" tool, git-help--browse is a more sensible name.
    Signed-off-by: Jeff King <>
    Signed-off-by: Junio C Hamano <>
Commits on Dec 15, 2007
  1. @gitster

    Rename git-browse-help helper to git-browse--help

    gitster authored
    Signed-off-by: Junio C Hamano <>
Commits on Dec 10, 2007
  1. @peff @gitster

    Add git-browse-help to .gitignore

    peff authored gitster committed
    Signed-off-by: Jeff King <>
    Signed-off-by: Junio C Hamano <>
Commits on Dec 5, 2007
  1. @gitster

    Merge branch 'kh/commit'

    gitster authored
    * kh/commit: (33 commits)
      git-commit --allow-empty
      git-commit: Allow to amend a merge commit that does not change the tree
      quote_path: fix collapsing of relative paths
      Make git status usage say git status instead of git commit
      Fix --signoff in builtin-commit differently.
      git-commit: clean up die messages
      Do not generate full commit log message if it is not going to be used
      Remove git-status from list of scripts as it is builtin
      Fix off-by-one error when truncating the diff out of the commit message.
      builtin-commit.c: export GIT_INDEX_FILE for launch_editor as well.
      Add a few more tests for git-commit
      builtin-commit: Include the diff in the commit message when verbose.
      builtin-commit: fix partial-commit support
      Fix add_files_to_cache() to take pathspec, not user specified list of files
      Export three helper functions from ls-files
      builtin-commit: run commit-msg hook with correct message file
      builtin-commit: do not color status output shown in the message template
      file_exists(): dangling symlinks do exist
      Replace "runstatus" with "status" in the tests
      t7501-commit: Add test for git commit <file> with dirty index.
Commits on Dec 3, 2007
  1. @dscho @gitster

    Add 'git fast-export', the sister of 'git fast-import'

    dscho authored gitster committed
    This program dumps (parts of) a git repository in the format that
    fast-import understands.
    For clarity's sake, it does not use the 'inline' method of specifying
    blobs in the commits, but builds the blobs before building the commits.
    Since signed tags' signatures will not necessarily be valid (think
    transformations after the export, or excluding revisions, changing
    the history), there are 4 modes to handle them: abort (default),
    ignore, warn and strip.  The latter just turns the tags into
    unsigned ones.
    Signed-off-by: Johannes Schindelin <>
    Signed-off-by: Junio C Hamano <>
Commits on Nov 23, 2007
  1. @gitster

    Port git commit to C.

    Kristian Høgsberg authored gitster committed
    This makes git commit a builtin and moves to
    contrib/examples.  This also removes the git-runstatus
    helper, which was mostly just a implementation detail.
    Signed-off-by: Kristian Høgsberg <>
    Signed-off-by: Junio C Hamano <>
Commits on Nov 2, 2007
  1. @gitster

    Merge branch 'ph/parseopt'

    gitster authored
    * ph/parseopt: (24 commits)
      gc: use parse_options
      Fixed a command line option type for builtin-fsck.c
      Make builtin-pack-refs.c use parse_options.
      Make builtin-name-rev.c use parse_options.
      Make builtin-count-objects.c use parse_options.
      Make builtin-fsck.c use parse_options.
      Update manpages to reflect new short and long option aliases
      Make builtin-for-each-ref.c use parse-opts.
      Make builtin-symbolic-ref.c use parse_options.
      Make builtin-update-ref.c use parse_options
      Make builtin-revert.c use parse_options.
      Make builtin-describe.c use parse_options
      Make builtin-branch.c use parse_options.
      Make builtin-mv.c use parse-options
      Make builtin-rm.c use parse_options.
      Port builtin-add.c to use the new option parser.
      parse-options: allow callbacks to take no arguments at all.
      parse-options: Allow abbreviated options when unambiguous
      Add shortcuts for very often used options.
      parse-options: make some arguments optional, add callbacks.
Commits on Oct 31, 2007
  1. @gitster

    No longer install git-svnimport, move to contrib/examples

    Gerrit Pape authored gitster committed
    This has been proposed for a few times without much reaction
    from the list.  Actually remove it to see who screams.
    Signed-off-by: Gerrit Pape <>
    Signed-off-by: Junio C Hamano <>
Commits on Oct 30, 2007
  1. @dscho @gitster

    Add tests for parse-options.c

    dscho authored gitster committed
    Signed-off-by: Johannes Schindelin <>
    Signed-off-by: Shawn O. Pearce <>
Commits on Oct 16, 2007
  1. @spearce

    makefile: Add a cscope target

    Kristof Provost authored spearce committed
    The current makefile supports ctags but not cscope. Some people prefer
    cscope (I do), so this patch adds a cscope target.
    I've also added cscope* to the .gitignore file. For some reason tags
    and TAGS weren't in there either so I've added them too.
    Signed-off-by: Kristof Provost <>
    Signed-off-by: Lars Hjemli <>
    Signed-off-by: Shawn O. Pearce <>
Commits on Sep 26, 2007
  1. @kraai @gitster

    Move convert-objects to contrib.

    kraai authored gitster committed
    convert-objects was needed to convert from an old-style repository,
    which hashed the compressed contents and used a different date format.
    Such repositories are presumably no longer common and, if such
    conversions are necessary, should be done by writing a frontend for
    Linus, the original author, is OK with moving it to contrib.
    Signed-off-by: Matt Kraai <>
    Signed-off-by: Junio C Hamano <>
Commits on Aug 4, 2007
  1. @RandalSchwartz @gitster

    add "test-absolute-path" to .gitignore

    RandalSchwartz authored gitster committed
    New file requires new ignore.
    Signed-off-by: Junio C Hamano <>
Commits on Jul 2, 2007
  1. @gitster

    Merge branch 'ns/stash'

    gitster authored
    * 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
Commits on Jul 1, 2007
  1. @gitster

    Add git-stash script

    しらいしななこ authored gitster committed
    When my boss has something to show me and I have to update, for some
    reason I am always in the middle of doing something else, and git pull
    command refuses to work in such a case.
    I wrote this little script to save the changes I made, perform the
    update, and then come back to where I was, but on top of the updated
    This is how you would use the script:
      $ git stash
      $ git pull
      $ git stash apply
    [jc: with a few fixlets from the list]
    Signed-off-by: Nanako Shiraishi <>
    Signed-off-by: Junio C Hamano <>
Commits on Jun 27, 2007
  1. @matled @gitster

    ignore git-rebase--interactive

    matled authored gitster committed
    Signed-off-by: Matthias Lederhofer <>
    Signed-off-by: Junio C Hamano <>
Commits on Jun 16, 2007
  1. @gitster
  2. @jnareb @gitster

    Generated spec file to be ignored is named git.spec and not git-core.…

    jnareb authored gitster committed
    Signed-off-by: Jakub Narebski <>
    Signed-off-by: Junio C Hamano <>
Commits on Jun 10, 2007
  1. @torvalds @gitster

    Makefile: add an explicit rule for building assembly output

    torvalds authored gitster committed
    In the kernel we have a rule for *.c -> *.s files exactly because
    it's nice to be able to easily say "ok, what does that generate".
    Here's a patch to add such a rule to git too, in case anybody is
    interested. It makes it much simpler to just do
    	make sha1_file.s
    and look at the compiler-generated output that way, rather than having to
    fire up gdb on the resulting binary.
    (Add -fverbose-asm or something if you want to, it can make the result
    even more readable)
    [jc: add *.s to .gitignore]
    Signed-off-by: Linus Torvalds <>
    Signed-off-by: Junio C Hamano <>
Commits on Jun 6, 2007
  1. @matled @gitster

    add git-filter-branch to .gitignore

    matled authored gitster committed
    Signed-off-by: Matthias Lederhofer <>
    Signed-off-by: Junio C Hamano <>
Commits on Jun 3, 2007
  1. @RandalSchwartz @gitster

    Add test-sha1 to .gitignore.

    RandalSchwartz authored gitster committed
    Signed-off-by: Junio C Hamano <>
  2. Merge branches 'lh/submodules' and 'pb/am'

    Junio C Hamano authored
    * lh/submodules:
      Add basic test-script for git-submodule
      Add git-submodule command
    * pb/am:
      Remove git-applypatch
      git-applymbox: Remove command
Commits on May 27, 2007
  1. @hjemli

    Add git-submodule command

    hjemli authored Junio C Hamano committed
    This command can be used to initialize, update and inspect submodules. It
    uses a .gitmodules file, readable by git-config, in the top level directory
    of the 'superproject' to specify a mapping between submodule paths and
    repository url.
    Example .gitmodules layout:
    [module "git"]
    	url = git://
    With this entry in .gitmodules (and a commit reference in the index entry for
    the path "git"), the command 'git submodule init' will clone the repository
    at into the directory "git".
    Known issues
    There is currently no way to override the url found in the .gitmodules file,
    except by manually creating the subproject repository. The place to fix this
    in the script has a rather long comment about a possible plan.
    Funny paths will be quoted in the output from git-ls-files, but git-submodule
    does not attempt to unquote (or even detect the presence of) such paths.
    Signed-off-by: Lars Hjemli <>
    Signed-off-by: Junio C Hamano <>
Commits on May 25, 2007
  1. Remove git-applypatch

    Junio C Hamano authored
    The previous one removed git-applymbox, which was the sole user
    of this tool.
    Signed-off-by: Junio C Hamano <>
  2. git-applymbox: Remove command

    Petr Baudis authored Junio C Hamano committed
    I believe noone uses git-applymbox, and noone definitely should, since it
    is supposed to be completely superseded and everything by its younger
    cousin git-am. The only known person in the universe to use it was Linus
    and he declared some time ago that he will try to use git-am instead in his
    famous dotest script.
    The trouble is that git-applymbox existence creates confusing UI. I'm a bit
    like a recycled newbie to the git porcelain and *I* was confused by
    git-applymbox primitiveness until I've realized a while later that I'm of
    course using the wrong command.
    Signed-off-by: Petr Baudis <>
    Signed-off-by: Junio C Hamano <>
Commits on Apr 22, 2007
  1. Merge branch 'jc/attr'

    Junio C Hamano authored
    * 'jc/attr': (28 commits)
      lockfile: record the primary process.
      convert.c: restructure the attribute checking part.
      Fix bogus linked-list management for user defined merge drivers.
      Simplify calling of CR/LF conversion routines
      Document gitattributes(5)
      Update 'crlf' attribute semantics.
      Documentation: support manual section (5) - file formats.
      Simplify code to find recursive merge driver.
      Counto-fix in merge-recursive
      Fix funny types used in attribute value representation
      Allow low-level driver to specify different behaviour during internal merge.
      Custom low-level merge driver: change the configuration scheme.
      Allow the default low-level merge driver to be configured.
      Custom low-level merge driver support.
      Add a demonstration/test of customized merge.
      Allow specifying specialized merge-backend per path.
      merge-recursive: separate out xdl_merge() interface.
      Allow more than true/false to attributes.
      Document git-check-attr
      Change attribute negation marker from '!' to '-'.
Commits on Apr 14, 2007
  1. Add basic infrastructure to assign attributes to paths

    Junio C Hamano authored
    This adds the basic infrastructure to assign attributes to
    paths, in a way similar to what the exclusion mechanism does
    based on $GIT_DIR/info/exclude and .gitignore files.
    An attribute is just a simple string that does not contain any
    whitespace.  They can be specified in $GIT_DIR/info/attributes
    file, and .gitattributes file in each directory.
    Each line in these files defines a pattern matching rule.
    Similar to the exclusion mechanism, a later match overrides an
    earlier match in the same file, and entries from .gitattributes
    file in the same directory takes precedence over the ones from
    parent directories.  Lines in $GIT_DIR/info/attributes file are
    used as the lowest precedence default rules.
    A line is either a comment (an empty line, or a line that begins
    with a '#'), or a rule, which is a whitespace separated list of
    tokens.  The first token on the line is a shell glob pattern.
    The rest are names of attributes, each of which can optionally
    be prefixed with '!'.  Such a line means "if a path matches this
    glob, this attribute is set (or unset -- if the attribute name
    is prefixed with '!').  For glob matching, the same "if the
    pattern does not have a slash in it, the basename of the path is
    matched with fnmatch(3) against the pattern, otherwise, the path
    is matched with the pattern with FNM_PATHNAME" rule as the
    exclusion mechanism is used.
    This does not define what an attribute means.  Tying an
    attribute to various effects it has on git operation for paths
    that have it will be specified separately.
    Signed-off-by: Junio C Hamano <>
Commits on Apr 12, 2007
  1. simple random data generator for tests

    Nicolas Pitre authored Junio C Hamano committed
    Reliance on /dev/urandom produces test vectors that are, well, random.
    This can cause problems impossible to track down when the data is
    different from one test invokation to another.
    The goal is not to have random data to test, but rather to have a
    convenient way to create sets of large files with non compressible and
    non deltifiable data in a reproducible way.
    Signed-off-by: Nicolas Pitre <>
    Signed-off-by: Junio C Hamano <>
Commits on Apr 7, 2007
  1. A new merge stragety 'subtree'.

    Junio C Hamano authored
    This merge strategy largely piggy-backs on git-merge-recursive.
    When merging trees A and B, if B corresponds to a subtree of A,
    B is first adjusted to match the tree structure of A, instead of
    reading the trees at the same level.  This adjustment is also
    done to the common ancestor tree.
    If you are pulling updates from git-gui repository into git.git
    repository, the root level of the former corresponds to git-gui/
    subdirectory of the latter.  The tree object of git-gui's toplevel
    is wrapped in a fake tree object, whose sole entry has name 'git-gui'
    and records object name of the true tree, before being used by
    the 3-way merge code.
    If you are merging the other way, only the git-gui/ subtree of
    git.git is extracted and merged into git-gui's toplevel.
    The detection of corresponding subtree is done by comparing the
    pathnames and types in the toplevel of the tree.
    Heuristics galore!  That's the git way ;-).
    Signed-off-by: Junio C Hamano <>
Commits on Apr 1, 2007
  1. Optional Tck/Tk: ignore generated files.

    Junio C Hamano authored
    Signed-off-by: Junio C Hamano <>
Commits on Mar 14, 2007
  1. Merge branch 'jc/fetch'

    Junio C Hamano authored
    * jc/fetch:
      .gitignore: add git-fetch--tool
      builtin-fetch--tool: fix reflog notes.
      git-fetch: retire update-local-ref which is not used anymore.
      builtin-fetch--tool: make sure not to overstep ls-remote-result buffer.
      fetch--tool: fix uninitialized buffer when reading from stdin
      builtin-fetch--tool: adjust to updated sha1_object_info().
      git-fetch--tool takes flags before the subcommand.
      Use stdin reflist passing in
      Use stdin reflist passing in parse-remote
      Allow fetch--tool to read from stdin
      git-fetch: rewrite expand_ref_wildcard in C
      git-fetch: rewrite another shell loop in C
      git-fetch: move more code into C.
      git-fetch--tool: start rewriting parts of git-fetch in C.
      git-fetch: split fetch_main into fetch_dumb and fetch_native
  2. @tytso

    Add git-mergetool to run an appropriate merge conflict resolution pro…

    tytso authored
    The git-mergetool program can be used to automatically run an appropriate
    merge resolution program to resolve merge conflicts.  It will automatically
    run one of kdiff3, tkdiff, meld, xxdiff, or emacs emerge programs.
    Signed-off-by: "Theodore Ts'o" <>
Commits on Mar 4, 2007
  1. .gitignore: add git-fetch--tool

    Junio C Hamano authored
    Signed-off-by: Junio C Hamano <>
Something went wrong with that request. Please try again.