summaryrefslogtreecommitdiff
path: root/Makefile
AgeCommit message (Collapse)AuthorFilesLines
2006-05-18Merge branch 'ts/doctar' into nextLibravatar Junio C Hamano1-5/+25
* ts/doctar: Documentation/Makefile: create tarballs for the man pages and html files SubmittingPatches: The download location of External Editor has moved Make git-check-format-ref a builtin. Make "git rev-list" be a builtin builtin-diff: do not say files are renamed when blob and file are given Provide a way to flush git-diff-tree's output
2006-05-18Documentation/Makefile: create tarballs for the man pages and html filesLibravatar Tilman Sauerbeck1-1/+21
[jc: rewrote by stealing from what I run to update html and man branches automatically] Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-18Make git-check-format-ref a builtin.Libravatar Lukas Sandström1-3/+3
Signed-off-by: Lukas Sandström <lukass@etek.chalmers.se> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-18Make "git rev-list" be a builtinLibravatar Linus Torvalds1-3/+3
This was surprisingly easy. The diff is truly minimal: rename "main()" to "cmd_rev_list()" in rev-list.c, and rename the whole file to reflect its new built-in status. Signed-off-by: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-17Merge branch 'lt/dirwalk' into nextLibravatar Junio C Hamano1-2/+2
* lt/dirwalk: Remove old "git-add.sh" remnants
2006-05-17Remove old "git-add.sh" remnantsLibravatar Linus Torvalds1-2/+2
Repeat after me: "It's now a built-in" Signed-off-by: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-17Merge branch 'jc/grep' into nextLibravatar Junio C Hamano1-11/+0
* jc/grep: Revert "builtin-grep: workaround for non GNU grep."
2006-05-17Merge branch 'lt/dirwalk' into nextLibravatar Junio C Hamano1-3/+3
* lt/dirwalk: builtin-add: warn on unmatched pathspecs Do "git add" as a builtin Clean up git-ls-file directory walking library interface libify git-ls-files directory traversal Not a conflict, but builtin-add needed to be adjusted to properly invalidate the cache_tree entry.
2006-05-17Do "git add" as a builtinLibravatar Linus Torvalds1-1/+1
First try. Let's see how well this works. In many ways, the hard parts of "git commit" are not so different from this, and a builtin commit would share a lot of the code, I think. Signed-off-by: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-17Revert "builtin-grep: workaround for non GNU grep."Libravatar Junio C Hamano1-11/+0
This reverts 518920b764ee9150781e68217181b24d0712748e commit. Linus has a more portable alternative.
2006-05-17Merge branch 'jc/grep' into nextLibravatar Junio C Hamano1-0/+11
* jc/grep: builtin-grep: workaround for non GNU grep.
2006-05-17builtin-grep: workaround for non GNU grep.Libravatar Junio C Hamano1-0/+11
Some implementations do not know what to do with -H; define NO_H_OPTION_IN_GREP when you build git if your grep lacks -H. Most of the time, it can be worked around by prepending /dev/null to the argument list, but that causes -L and -c to slightly misbehave (they both expose /dev/null is given), so when these options are given, do not run external grep that does not understand -H. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-17libify git-ls-files directory traversalLibravatar Linus Torvalds1-2/+2
This moves the core directory traversal and filename exclusion logic into the general git library, making it available for other users directly. If we ever want to do "git commit" or "git add" as a built-in (and we do), we want to be able to handle most of git-ls-files as a library. NOTE! Not all of git-ls-files is libified by this. The index matching and pathspec prefix calculation is still in ls-files.c, but this is a big part of it. Signed-off-by: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-16Merge branch 'master' into nextLibravatar Junio C Hamano1-2/+3
* master: Remove old "git-grep.sh" remnants merge-base: Clarify the comments on post processing. Update the documentation for git-merge-base
2006-05-16Remove old "git-grep.sh" remnantsLibravatar Linus Torvalds1-2/+3
It's built-in now. Signed-off-by: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-15Merge branch 'master' into nextLibravatar Junio C Hamano1-1/+3
* master: Fix silly typo in new builtin grep Fix pack-index issue on 64-bit platforms a bit more portably. Install git-send-email by default Fix compilation on newer NetBSD systems
2006-05-15Merge branch 'jc/grep'Libravatar Junio C Hamano1-1/+2
* jc/grep: (22 commits) Fix silly typo in new builtin grep builtin-grep: unparse more command line options. builtin-grep: use external grep when we can take advantage of it builtin-grep: -F (--fixed-strings) builtin-grep: -w fix builtin-grep: typofix builtin-grep: tighten argument parsing. builtin-grep: documentation Teach -f <file> option to builtin-grep. builtin-grep: -L (--files-without-match). builtin-grep: binary files -a and -I builtin-grep: terminate correctly at EOF builtin-grep: tighten path wildcard vs tree traversal. builtin-grep: support -w (--word-regexp). builtin-grep: support -c (--count). builtin-grep: allow more than one patterns. builtin-grep: allow -<n> and -[ABC]<n> notation for context lines. builtin-grep: printf %.*s length is int, not ptrdiff_t. builtin-grep: do not use setup_revisions() builtin-grep: support '-l' option. ...
2006-05-15Merge branch 'fix'Libravatar Junio C Hamano1-1/+3
* fix: Fix pack-index issue on 64-bit platforms a bit more portably. Install git-send-email by default Fix compilation on newer NetBSD systems git config syntax updates Another config file parsing fix. checkout: use --aggressive when running a 3-way merge (-m).
2006-05-15Install git-send-email by defaultLibravatar Eric Wong1-5/+2
After 567ffeb7722eefab3991cb894c96548b92b57cc2 and 4bc87a28be020a6bf7387161c65ea3d8e4a0228b, git-send-email no longer requires any non-standard Perl modules, so there's no reason to special-case it. Signed-off-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-15Fix compilation on newer NetBSD systemsLibravatar Dennis Stosberg1-1/+3
NetBSD >=2.0 has iconv() in libc. A libiconv is not required and does not exist. See: http://netbsd.gw.com/cgi-bin/man-cgi?iconv+3+NetBSD-2.0 [jc: with a bit of simplification later discussed on the list.] Signed-off-by: Dennis Stosberg <dennis@stosberg.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-15Merge branch 'jc/apply' into nextLibravatar Junio C Hamano1-5/+2
* jc/apply: apply --numstat: show new name, not old name. Ensure author & committer before asking for commit message. Install git-send-email by default send-email: address expansion for common mailers diffstat rename squashing fix.
2006-05-14Install git-send-email by defaultLibravatar Eric Wong1-5/+2
After 567ffeb7722eefab3991cb894c96548b92b57cc2 and 4bc87a28be020a6bf7387161c65ea3d8e4a0228b, git-send-email no longer requires any non-standard Perl modules, so there's no reason to special-case it. Signed-off-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-09Merge branch 'np/delta'Libravatar Junio C Hamano1-1/+1
* np/delta: improve diff-delta with sparse and/or repetitive data tiny optimization to diff-delta replace adler32 with Rabin's polynomial in diff-delta use delta index data when finding best delta matches split the diff-delta interface
2006-05-05Merge branch 'jc/bindiff' into nextLibravatar Junio C Hamano1-5/+1
* jc/bindiff: binary diff: further updates. binary patch. pack-object: squelch eye-candy on non-tty core.prefersymlinkrefs: use symlinks for .git/HEAD repo-config: trim white-space before comment Fix for config file section parsing. Clarify git-cherry documentation. Update git-unpack-objects documentation. Fix up docs where "--" isn't displayed correctly. Several trivial documentation touch ups. git-svn 1.0.0 git-svn: documentation updates delta: stricter constness Makefile: do not link rev-list any specially. builtin-push: --all and --tags _are_ explicit refspecs
2006-05-05binary patch.Libravatar Junio C Hamano1-1/+1
This adds "binary patch" to the diff output and teaches apply what to do with them. On the diff generation side, traditionally, we said "Binary files differ\n" without giving anything other than the preimage and postimage object name on the index line. This was good enough for applying a patch generated from your own repository (very useful while rebasing), because the postimage would be available in such a case. However, this was not useful when the recipient of such a patch via e-mail were to apply it, even if the preimage was available. This patch allows the diff to generate "binary" patch when operating under --full-index option. The binary patch follows the usual extended git diff headers, and looks like this: "GIT binary patch\n" <length byte><data>"\n" ... "\n" Each line is prefixed with a "length-byte", whose value is upper or lowercase alphabet that encodes number of bytes that the data on the line decodes to (1..52 -- 'A' means 1, 'B' means 2, ..., 'Z' means 26, 'a' means 27, ...). <data> is 1 or more groups of 5-byte sequence, each of which encodes up to 4 bytes in base85 encoding. Because 52 / 4 * 5 = 65 and we have the length byte, an output line is capped to 66 characters. The payload is the same diff-delta as we use in the packfiles. On the consumption side, git-apply now can decode and apply the binary patch when --allow-binary-replacement is given, the diff was generated with --full-index, and the receiving repository has the preimage blob, which is the same condition as it always required when accepting an "Binary files differ\n" patch. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-05core.prefersymlinkrefs: use symlinks for .git/HEADLibravatar Junio C Hamano1-2/+6
When inspecting a project whose build infrastructure used to assume that .git/HEAD is a symlink ref, core.prefersymlinkrefs in the config file of such a project would help to bisect its history. Signed-off-by: Junio C Hamano <junkio@cox.net> (cherry picked from 9f0bb90d161edf8c43f5261d12bf83f14eb02ff4 commit)
2006-05-04Makefile: do not link rev-list any specially.Libravatar Junio C Hamano1-4/+0
We used to depend on bignum from openssl for rev-list to compute merge-order, but there is no reason to use different build recipe from other programs anymore. Just build it with git-%$X rule like everybody else. Noticed by Alexey Dobriyan. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-04Merge branch 'js/fetchconfig' into nextLibravatar Junio C Hamano1-2/+2
* js/fetchconfig: Add a conversion tool to migrate remote information into the config fetch, pull: ask config for remote information Add a few more words to the glossary. Added definitions for a few words: Alphabetize the glossary. sha1_to_hex() usage cleanup
2006-05-04Merge branch 'jc/logs'Libravatar Junio C Hamano1-6/+3
* jc/logs: builtin-log/whatchanged/show: make them official.
2006-05-03Merge branch 'jc/symref'Libravatar Junio C Hamano1-2/+6
* jc/symref: core.prefersymlinkrefs: use symlinks for .git/HEAD
2006-05-03Merge branch 'jc/diff'Libravatar Junio C Hamano1-3/+3
* jc/diff: builtin-diff: call it "git-diff", really. builtin-diff.c: die() formatting type fix. built-in diff: assorted updates. built-in diff.
2006-05-03Merge branch 'jc/count'Libravatar Junio C Hamano1-3/+3
* jc/count: builtin-count-objects: open packs when running -v builtin-count-objects: make it official. built-in count-objects.
2006-05-02Merge branch 'jc/symref' into nextLibravatar Junio C Hamano1-2/+6
* jc/symref: core.prefersymlinkrefs: use symlinks for .git/HEAD
2006-05-02core.prefersymlinkrefs: use symlinks for .git/HEADLibravatar Junio C Hamano1-2/+6
When inspecting a project whose build infrastructure used to assume that .git/HEAD is a symlink ref, core.prefersymlinkrefs in the config file of such a project would help to bisect its history. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-01Merge branch 'lt/push' into nextLibravatar Junio C Hamano1-2/+2
* lt/push: builtin-push: make it official.
2006-05-01builtin-push: make it official.Libravatar Junio C Hamano1-2/+3
Remove the shell script version, and hardlink the git binary to it. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-01Merge branch 'jc/count' into nextLibravatar Junio C Hamano1-2/+2
* jc/count: builtin-count-objects: make it official.
2006-05-01Merge branch 'jc/logs' into nextLibravatar Junio C Hamano1-6/+3
* jc/logs: builtin-log/whatchanged/show: make them official.
2006-05-01builtin-log/whatchanged/show: make them official.Libravatar Junio C Hamano1-6/+3
Remove the shell script version, and hardlink the git binary to them. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-01Merge branch 'jc/diff' into nextLibravatar Junio C Hamano1-2/+3
* jc/diff: builtin-diff: call it "git-diff", really.
2006-05-01builtin-diff: call it "git-diff", really.Libravatar Junio C Hamano1-2/+3
Call it "git diff" not "git diffn", remove the shell script version, and hardlink the git binary to it. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-01builtin-count-objects: make it official.Libravatar Junio C Hamano1-2/+3
Remove the shell-script version, make the hardlink from the git binary, and update the documentation to describe a new option. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-01Merge branch 'jc/grep' into nextLibravatar Junio C Hamano1-1/+1
* jc/grep: built-in "git grep"
2006-05-01built-in "git grep"Libravatar Junio C Hamano1-1/+1
This attempts to set up built-in "git grep" to further reduce our dependence on the shell, while at the same time optionally allowing to run grep against object database. You could do funky things like these: git grep --cached -e pattern ;# grep from index git grep -e pattern master ;# or in a rev git grep -e pattern master next ;# or in multiple revs git grep -e pattern pu^@ ;# even like this with an ;# extension from another topic ;-) git grep -e pattern master..next ;# or even from rev ranges git grep -e pattern master~20:Documentation ;# or an arbitrary tree git grep -e pattern next:git-commit.sh ;# or an arbitrary blob Right now, it does not understand and/or obey many options grep should accept, and the pattern must be given with -e option due to the way the parameter parser is structured, both of which obviously need to be fixed for usability. But this is going in the right direction. The shell script version is one of the worst Portability offender in the git barebone Porcelainish; it uses xargs -0 to pass paths around and shell arrays to sift flags and parameters. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-04-30Merge branch 'lt/push' into nextLibravatar Junio C Hamano1-1/+2
* lt/push: git builtin "push" git-format-patch: Use rfc2822 compliant date.
2006-04-30git builtin "push"Libravatar Linus Torvalds1-1/+1
This adds a builtin "push" command, which is largely just a C'ification of the "git-push.sh" script. Now, the reason I did it as a built-in is partly because it's yet another step on relying less on shell, but it's actually mostly because I've wanted to be able to push to _multiple_ repositories, and the most obvious and simplest interface for that would seem be to just have a "remotes" file that has multiple URL entries. (For "pull", having multiple entries should either just select the first one, or you could fall back on the others on failure - your choice). And quite frankly, it just became too damn messy to do that in shell. Besides, we actually have a fair amount of infrastructure in C, so it just wasn't that hard to do. Of course, this is almost totally untested. It probably doesn't work for anything but the one trial I threw at it. "Simple" doesn't necessarily mean "obviously correct". Signed-off-by: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-04-29Merge branch 'jc/diff' into nextLibravatar Junio C Hamano1-1/+1
* jc/diff: built-in diff: assorted updates. built-in diff.
2006-04-28built-in diff.Libravatar Junio C Hamano1-1/+1
This starts to replace the shell script version of "git diff". Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-04-28Merge branch 'np/delta' into nextLibravatar Junio C Hamano1-1/+1
* np/delta: replace adler32 with Rabin's polynomial in diff-delta
2006-04-28replace adler32 with Rabin's polynomial in diff-deltaLibravatar Nicolas Pitre1-1/+1
This brings another small repacking speedup for sensibly the same pack size. On the Linux kernel repo, git-repack -a -f is 3.7% faster for a 0.4% larger pack. Credits to Geert Bosch who brought the Rabin's polynomial idea to my attention. This also eliminate the issue of adler32() reading past the data buffer, as noticed by Johannes Schindelin. Signed-off-by: Nicolas Pitre <nico@cam.org> Signed-off-by: Junio C Hamano <junkio@cox.net>