summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2006-07-06git-svn: migrate out of contribLibravatar Eric Wong14-61/+28
Allow NO_SVN_TESTS to be defined to skip git-svn tests. These tests are time-consuming due to SVN being slow, and even more so if SVN Perl libraries are not available. Signed-off-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-06Merge branch 'ew/instaweb'Libravatar Junio C Hamano4-1/+335
* ew/instaweb: instaweb: fix unportable ';' usage in sed Makefile: replace ugly and unportable sed invocation Add git-instaweb, instantly browse the working repo with gitweb gitweb: Declare global variables with "our" gitweb: Enable tree (directory) history display gitweb: optimize per-file history generation
2006-07-06core.compression documentation formatting fix.Libravatar Joachim Berdal Haga1-1/+1
I didn't notice earlier that two colons are required for the asciidoc entry. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-05git-reset: complain and exit upon seeing an unknown parameter.Libravatar Junio C Hamano1-1/+5
The check to use "rev-parse --verify" was defeated by the use of "--default HEAD". "git reset --hard bogus-committish" just defaulted to reset to the HEAD without complaining. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-05Merge branch 'lt/gitweb'Libravatar Junio C Hamano1-35/+31
* lt/gitweb: gitweb: Declare global variables with "our" gitweb: Enable tree (directory) history display gitweb: optimize per-file history generation
2006-07-05Merge branch 'jc/fmt-merge-msg-test'Libravatar Junio C Hamano1-0/+163
* jc/fmt-merge-msg-test: t6200: fmt-merge-msg test.
2006-07-05Merge branch 'jc/sha1'Libravatar Junio C Hamano4-156/+331
* jc/sha1: A better-scheduled PPC SHA-1 implementation. test-sha1: test hashing large buffer Makefile: add framework to verify and bench sha1 implementations.
2006-07-05Merge branch 'jc/diff-test'Libravatar Junio C Hamano10-0/+263
* jc/diff-test: t4013: add "diff" UI program tests.
2006-07-05Merge branch 'th/diff'Libravatar Junio C Hamano110-205/+4722
* th/diff: builtin-diff: turn recursive on when defaulting to --patch format. t4013: note improvements brought by the new output code. t4013: add format-patch tests. format-patch: fix diff format option implementation combine-diff.c: type sanity. t4013 test updates for new output code. Fix some more diff options changes. Fix diff-tree -s log --raw: Don't descend into subdirectories by default diff-tree: Use ---\n as a message separator Print empty line between raw, stat, summary and patch t4013: add more tests around -c and --cc whatchanged: Default to DIFF_FORMAT_RAW Don't xcalloc() struct diffstat_t Add msg_sep to diff_options DIFF_FORMAT_RAW is not default anymore Set default diff output format after parsing command line Make --raw option available for all diff commands Merge with_raw, with_stat and summary variables to output_format t4013: add tests for diff/log family output options.
2006-07-05Merge branch 'jc/grepfix'Libravatar Junio C Hamano1-10/+26
* jc/grepfix: git-grep: use a bit more specific error messages. git-grep: fix exit code when we use external grep. git-grep: fix parsing of pathspec separator '--'
2006-07-05Merge branch 'js/fmt-merge-msg'Libravatar Junio C Hamano5-177/+362
* js/fmt-merge-msg: Make git-fmt-merge-msg a builtin
2006-07-05Fix print-log and diff compatibility with recent vc versionsLibravatar Ville Skytt,Ad(B1-6/+7
Here's a patch that fixes print-log and diff compatibility with recent vc versions, such as current GNU Emacs CVS. Signed-off-by: Ville Skytt,Ad(B <scop@xemacs.org>
2006-07-05git-svn: avoid fetching files outside of the URL we're trackingLibravatar Eric Wong1-1/+1
Thanks to Santi <sbejar@gmail.com> for the bug report and explanation: > /path/to/repository/project/file > /path/to/repository/project-2/file <...> > you end up with a project with the following files: > > file > -2/file Signed-off-by: Eric Wong <normalperson@yhbt.net>
2006-07-04Improve git-peek-remoteLibravatar Linus Torvalds4-13/+58
This makes git-peek-remote able to basically do everything that git-ls-remote does (but obviously just for the native protocol, so no http[s]: or rsync: support). The default behaviour is the same, but you can now give a mixture of "--refs", "--tags" and "--heads" flags, where "--refs" forces git-peek-remote to only show real refs (ie none of the fakey tag lookups, but also not the special pseudo-refs like HEAD and MERGE_HEAD). The "--tags" and "--heads" flags respectively limit the output to just regular tags and heads, of course. You can still also ask to limit them by name too. You can combine the flags, so git peek-remote --refs --tags . will show all local _true_ tags, without the generated tag lookups (compare the output without the "--refs" flag). And "--tags --heads" will show both tags and heads, but will avoid (for example) any special refs outside of the standard locations. I'm also planning on adding a "--ignore-local" flag that allows us to ask it to ignore any refs that we already have in the local tree, but that's an independent thing. All this is obviously gearing up to making "git fetch" cheaper. Signed-off-by: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-04git-grep: use a bit more specific error messages.Libravatar Junio C Hamano1-4/+11
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-04git-grep: fix exit code when we use external grep.Libravatar Junio C Hamano1-5/+10
Upon hit, we should exit with status 0. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-04git-grep: fix parsing of pathspec separator '--'Libravatar Junio C Hamano1-1/+5
We used to misparse git grep -e foo -- '*.sh' Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-04t8001-annotate: fix a bash-ism in this testLibravatar Eric Wong1-2/+2
Signed-off-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-03Make git-fmt-merge-msg a builtinLibravatar Johannes Schindelin5-177/+362
Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-03t6200: fmt-merge-msg test.Libravatar Junio C Hamano1-0/+163
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-03send-email: do not barf when Term::ReadLine does not like your terminalLibravatar Junio C Hamano2-5/+24
As long as we do not need to readline from the terminal, we should not barf when starting up the program. Without this patch, t9001 test on Cygwin occasionally died with the following error message: Unable to get Terminal Size. The TIOCGWINSZ ioctl didn't work. The COLUMNS and LINES environment variables didn't work. The resize program didn't work. at /usr/lib/perl5/vendor_perl/5.8/cygwin/Term/ReadKey.pm line 362. Compilation failed in require at /usr/lib/perl5/vendor_perl/5.8/Term/ReadLine/Perl.pm line 58. Acked-by: Ryan Anderson <ryan@michonline.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-03boolean: accept yes and no as wellLibravatar Junio C Hamano1-2/+2
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-03annotate: Correct most merge following to annotate correctly.Libravatar Ryan Anderson1-58/+139
There is still a bug involving octopus merges, somewhere, but this gets normal merges correct, so it's still an improvement over the existing version. Signed-off-by: Ryan Anderson <ryan@michonline.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-03annotate: Support annotation of files on other revisions.Libravatar Ryan Anderson1-0/+6
This is a bug fix, and cleans up one or two other things spotted during the course of tracking down the main bug here. Also, the test-suite is updated to reflect this case. Signed-off-by: Ryan Anderson <ryan@michonline.com> (cherry picked from 2f7554b4db3ab2c2d3866b160245c91c9236fc9a commit) Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-03Make zlib compression level configurable, and change default.Libravatar Joachim B Haga8-5/+23
With the change in default, "git add ." on kernel dir is about twice as fast as before, with only minimal (0.5%) change in object size. The speed difference is even more noticeable when committing large files, which is now up to 8 times faster. The configurability is through setting core.compression = [-1..9] which maps to the zlib constants; -1 is the default, 0 is no compression, and 1..9 are various speed/size tradeoffs, 9 being slowest. Signed-off-by: Joachim B Haga (cjhaga@fys.uio.no) Acked-by: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-03Makefile: tighten git-http-{fetch,push} dependenciesLibravatar Junio C Hamano1-2/+2
Although our "git-%$X:" implicit target had dependency on $(GITLIBS) which included xdiff/lib.a, git-http-{fetch,push} had their own building rules and with an obsolete dependency on $(LIB_FILES). Update the rules to depend on $(GITLIBS), to make parallel build work correctly. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-02Empty author may be presented by svn as an empty string or a null value.Libravatar Robin Rosenberg1-1/+1
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-02instaweb: fix unportable ';' usage in sedLibravatar Eric Wong1-3/+3
Hint taken from Johannes. I've tested this with sed --posix on my system with GNU sed and it works fine with and also without it. Further portability testing/review would be good. Signed-off-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-02Makefile: replace ugly and unportable sed invocationLibravatar Johannes Schindelin1-5/+5
Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-02revision.c: fix "dense" under --remove-emptyLibravatar Linus Torvalds1-1/+1
It had the wrong test for whether a commit was a merge. What it did was to say that a non-merge has exactly one parent (which sounds almost right), but the fact is, initial trees have no parent at all, but they're obviously not merges. Signed-off-by: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-01builtin-diff: turn recursive on when defaulting to --patch format.Libravatar Junio C Hamano1-1/+3
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-01t4013: add "diff" UI program tests.Libravatar Junio C Hamano10-0/+263
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-01Add git-instaweb, instantly browse the working repo with gitwebLibravatar Eric Wong4-1/+335
I got tired of having to configure gitweb for every repository I work on. I sometimes prefer gitweb to standard GUIs like gitk or gitview; so this lets me automatically configure gitweb to browse my working repository and also opens my browser to it. Updates from the original patch: Added Apache/mod_perl2 compatibility if Dennis Stosberg's gitweb has been applied, too: <20060621130708.Gcbc6e5c@leonov.stosberg.net> General cleanups in shell code usage. Signed-off-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-01gitweb: Declare global variables with "our"Libravatar Dennis Stosberg1-28/+27
Variables declared with "my" in the file scope cannot be accessed from subroutines with mod_perl. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-01gitweb: Enable tree (directory) history displayLibravatar Luben Tuikov1-0/+1
This patch allows history display of whole trees/directories a la "git-rev-list HEAD -- <dir or file>". I find this useful especially when a project lives in its own subdirectory, as opposed to being all of the GIT repository (i.e. when a sub-project is merged into a super-project). Signed-off-by: Luben Tuikov <ltuikov@yahoo.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-01gitweb: optimize per-file history generationLibravatar Junio C Hamano1-7/+3
The rev-list command that is recent enough can filter commits based on paths they touch, so use it instead of generating the full list and limiting it by passing it with diff-tree --stdin. [jc: The patch originally came from Luben Tuikov but the it was corrupt, but it was short enough to be applied by hand. I added the --full-history to make the output compatible with the original while doing so.] Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-01gitweb: Declare global variables with "our"Libravatar Dennis Stosberg1-28/+27
Variables declared with "my" in the file scope cannot be accessed from subroutines with mod_perl. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-01gitweb: Enable tree (directory) history displayLibravatar Luben Tuikov1-0/+1
This patch allows history display of whole trees/directories a la "git-rev-list HEAD -- <dir or file>". I find this useful especially when a project lives in its own subdirectory, as opposed to being all of the GIT repository (i.e. when a sub-project is merged into a super-project). Signed-off-by: Luben Tuikov <ltuikov@yahoo.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-01gitweb: optimize per-file history generationLibravatar Junio C Hamano1-7/+3
The rev-list command that is recent enough can filter commits based on paths they touch, so use it instead of generating the full list and limiting it by passing it with diff-tree --stdin. [jc: The patch originally came from Luben Tuikov but the it was corrupt, but it was short enough to be applied by hand. I added the --full-history to make the output compatible with the original while doing so.] Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-01git object hash cleanupsLibravatar Linus Torvalds1-44/+53
This IMNSHO cleans up the object hashing. The hash expansion is separated out into a function of its own, the hash array (and size) names are made more obvious, and the code is generally made to look a bit more like the object-ref hashing. It also gets rid of "find_object()" returning an index (or negative position if no object is found), since that is made redundant by the simplified object rehashing. The basic operation is now "lookup_object()" which just returns the object itself. There's an almost unmeasurable speed increase, but more importantly, I think the end result is more readable. Signed-off-by: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-01revision.c: --full-history fix.Libravatar Linus Torvalds1-4/+14
With history simplification, we still show merges that are required to make the history _complete_, i.e. say that you had: a | b / \ c d | | and neither "a" nor "b" actually changed the file, but both "c" and "d" did: in this case we have to leave "b" around just because otherwise there would be no way to show the _relationship_, even if "b" itself doesn't actually change the tree in any way what-so-ever. It would make sense to make that further simplification if the "--parents" flag wasn't present. In that case the user is literally asking for a list of commits and is not interested in the relationship between them. This patch also fixes a real bug. Without this patch, the "--parents --full-history" combination (which you'd get if you do something like gitk --full-history Makefile or similar) will actually _drop_ merges where all children are identical. That's wrong in the --full-history case, because it means that the graph ends up missing lots of entries. In the process, this also should make git-rev-list --full-history Makefile give just the _true_ list of all commits that changed Makefile (and properly ignore merges that were identical in one parent), because now we're not asking for "--parent", so we don't need the unnecessary merge commits to keep the history together. Signed-off-by: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-01Fix errno usage in connect.cLibravatar Petr Baudis1-6/+12
errno was used after it could've been modified by a subsequent library call. Spotted by Morten Welinder. Signed-off-by: Petr Baudis <pasky@suse.cz> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-01Minor documentation fixup.Libravatar Robin Rosenberg1-3/+3
Signed-off-by: Robin Rosenberg <robin.rosenberg@dewire.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-06-30git-svn: allow a local target directory to be specified for initLibravatar Eric Wong1-2/+12
git-svn init url://to/the/repo local-repo will create the local-repo dirrectory if doesn't exist yet and populate it as expected. Original patch by Luca Barbato, cleaned up and made to work for the current version of git-svn by me (Eric Wong). Signed-off-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-06-30don't load objects needlessly when repackingLibravatar Nicolas Pitre1-17/+28
If no delta is attempted on some objects then it is useless to load them in memory, neither create any delta index for them. The best thing to do is therefore to load and index them only when really needed. Signed-off-by: Nicolas Pitre <nico@cam.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-06-30upload-pack.c: <sys/poll.h> includes <ctype.h> on OpenBSD 3.8Libravatar Junio C Hamano1-3/+3
Merlyn reports that <sys/poll.h> on OpenBSD 3.8 includes <ctype.h> and having our custom ctype (done in git-compat-util.h which is included via cache.h) makes upload-pack.c uncompilable. Try to work it around by including the system headers first. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-06-29Abstract out accesses to object hash arrayLibravatar Linus Torvalds4-13/+27
There are a few special places where some programs accessed the object hash array directly, which bothered me because I wanted to play with some simple re-organizations. So this patch makes the object hash array data structures all entirely local to object.c, and the few users who wanted to look at it now get to use a function to query how many object index entries there can be, and to actually access the array. Signed-off-by: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-06-29consider previous pack undeltified object state only when reusing delta dataLibravatar Nicolas Pitre1-2/+3
Without this there would never be a chance to improve packing for previously undeltified objects. Signed-off-by: Nicolas Pitre <nico@cam.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-06-29Merge branch 'jc/test-3402'Libravatar Junio C Hamano1-1/+1
* jc/test-3402: Racy GIT (part #3)
2006-06-29Do not try futile object pairs when repacking.Libravatar Linus Torvalds1-0/+7
In the repacking window, if both objects we are looking at already came from the same (old) pack-file, don't bother delta'ing them against each other. That means that we'll still always check for better deltas for (and against!) _unpacked_ objects, but assuming incremental repacks, you'll avoid the delta creation 99% of the time. Signed-off-by: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Junio C Hamano <junkio@cox.net>