summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2007-05-06GIT v1.5.2-rc2v1.5.2-rc2Junio C Hamano
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-06Merge branch 'maint'Junio C Hamano
* maint: Small correction in reading of commit headers Documentation: fix typo in git-remote.txt Add test for blame corner cases. blame: -C -C -C blame: Notice a wholesale incorporation of an existing file. Fix --boundary output diff format documentation: describe raw combined diff format Mention version 1.5.1 in tutorial and user-manual Add --no-rebase option to git-svn dcommit Fix markup in git-svn man page
2007-05-06Handle return code of parse_commit in revision machineryAlex Riesen
This fixes a crash in broken repositories where random commits suddenly disappear. Signed-off-by: Alex Riesen <raa.lkml@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-05Small correction in reading of commit headersAlex Riesen
Check if a line of the header has enough characters to possibly contain the requested prefix. Signed-off-by: Alex Riesen <raa.lkml@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-05Documentation: fix typo in git-remote.txtJames Bowes
Signed-off-by: James Bowes <jbowes@dangerouslyinc.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-05Add test for blame corner cases.Junio C Hamano
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-05blame: -C -C -CJunio C Hamano
When you do this, existing "blame -C -C" would not find that the latter half of the file2 came from the existing file1: ... both file1 and file2 are tracked ... $ cat file1 >>file2 $ git add file1 file2 $ git commit This is because we avoid the expensive find-copies-harder code that makes unchanged file (in this case, file1) as a candidate for copy & paste source when annotating an existing file (file2). The third -C now allows it. However, this obviously makes the process very expensive. We've actually seen this patch before, but I dismissed it because it covers such a narrow (and arguably stupid) corner case. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-05blame: Notice a wholesale incorporation of an existing file.Junio C Hamano
The -C option to blame tries to find a section of a preimage file by running diff against the lines whose origin is still unknown, and excluding the different parts. The code however did not cover the case where the tail part of the section matched, which we handle for the normal non-move/copy codepath. This breakage was most visible when preimage file matches in its entirety and failed to pass blame in such a case. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-05Fix --boundary outputLinus Torvalds
"git log --boundary" incorrectly honoured the option only when "left-right" was enabled. Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-04diff format documentation: describe raw combined diff formatJakub Narebski
Add description of raw combined diff format to diff-formats.txt, as "diff format for merges" section, before "Generating patches..." section. Signed-off-by: Jakub Narebski <jnareb@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-04Mention version 1.5.1 in tutorial and user-manualCarl Worth
Most other documentation will frequently be read from an installation of git so will naturally be associated with the installed version. But these two documents in particular are often read from web pages while users are still exploring git. It's important to mention version 1.5.1 since these documents provide example commands that won't work with previous versions of git. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-04Add --no-rebase option to git-svn dcommitKarl Hasselström
git-svn dcommit exports commits to Subversion, then imports them back to git again, and last but not least rebases or resets HEAD to the last of the new commits. I guess this rebasing is convenient when using just git, but when the commits to be exported are managed by StGIT, it's really annoying. So add an option to disable this behavior. And document it, too! Signed-off-by: Karl Hasselström <kha@treskal.com> Acked-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-04Fix markup in git-svn man pageKarl Hasselström
Some of the existing markup was just plain broken, and some subcommand options weren't indented properly. Signed-off-by: Karl Hasselström <kha@treskal.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-03git-tag(1): -v option is a subcommand; fix code blockJonas Fonseca
When the -v is passed, git-tag will exit after it is processed like it does with the -d and -l options. Additionally, missing code block caused wrong rendering of an option example. Signed-off-by: Jonas Fonseca <fonseca@diku.dk> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-03Improve request-pull to handle non-rebased branchesShawn O. Pearce
This is actually a few different changes to request-pull, making it slightly smarter: 1) Minor cleanup of revision->base variable names, making it follow the head/headrev naming convention that is already in use. 2) Compute the merge-base between the two revisions upfront and reuse that selected merge-base to create the diffstat. 3) Refuse to generate a pull request for branches that have no existing relationship. These aren't very common and would mess up our diffstat generation. 4) Disable the PAGER when running shortlog and diff, as these would otherwise activate the pager for each command when git-request-pull is run on a tty. Instead users can get the entire output paged (if desired) using `git -p request-pull`. 5) Use shortlog rather than `git log | git shortlog` now that recent shortlog versions are able to run the revision listing internally. 6) Attempt to resolve the input URL using the user's configured remotes. This is useful if the URL you want the recipient to see is also the one you used to push your changes. If not a config-file remote could easily be setup for the public URL and request-pull could be passed that name instead. 7) Automatically guess and include the remote branch name in the body of the message. We list the branch name immediately after the URL, making it easy for the recipient to copy and paste the entire line onto a `git pull` command line. Rumor has it Linus likes this format, for exactly that reason. If multiple branches at the remote match $headrev we take the first one returned by peek-remote and assume it is suitable. If no branches are available we warn the user about the problem, but insert a static string that is not a valid branch name and would be obvious to anyone reading the message as being totally incorrect. This allows users to still generate a template message without network access (for example) and hand-correct the bits that cannot be verified. Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-03Merge branch 'maint'Junio C Hamano
* maint: gitweb: use decode_utf8 directly posix compatibility for t4200 Document 'opendiff' value in config.txt and git-mergetool.txt Allow PERL_PATH="/usr/bin/env perl" Make xstrndup common diff.c: fix "size cache" handling. http-fetch: Disable use of curl multi support for libcurl < 7.16.
2007-05-03gitweb: use decode_utf8 directlyIsmail Dönmez
Using decode() tries to decode data that is already UTF-8 and borks, but decode_utf8 from Encode.pm has a built-in safety against that. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-03posix compatibility for t4200Bryan Larsen
Fix t4200 so that it also works on OS X by not relying on gnu extensions to sed. Signed-off-by: Bryan Larsen <bryan@larsen.st> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-03Document 'opendiff' value in config.txt and git-mergetool.txtArjen Laarhoven
Signed-off-by: Arjen Laarhoven <arjen@yaph.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-03Allow PERL_PATH="/usr/bin/env perl"Bryan Larsen
There is a mechanism PERL_PATH in the Makefile to specify path to Perl binary, but sometimes it is convenient to let 'env' figure out where Perl comes from, with PERL_PATH="/usr/bin/env perl". Allowing this would make things easier to MacPorts, where we wish to work with the MacPorts perl if it is installed, but fall back to the system perl if it isn't. Signed-off-by: Bryan Larsen <bryan@larsen.st> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-03Make xstrndup commonDaniel Barkalow
This also improves the implementation to match how strndup is specified (by GNU): if the length given is longer than the string, only the string's length is allocated and copied, but the string need not be null-terminated if it is at least as long as the given length. Signed-off-by: Daniel Barkalow <barkalow@iabervon.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-03diff.c: fix "size cache" handling.Junio C Hamano
We broke the size-cache handling when we changed the function signature of sha1_object_info() in 21666f1a. We obviously wanted to cache the size we obtained when sha1_object_info() succeeded, not when it failed. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-03http-fetch: Disable use of curl multi support for libcurl < 7.16.Alexandre Julliard
curl_multi_remove_handle() is broken in libcurl < 7.16, in that it doesn't correctly update the active handles count when a request is aborted. This causes the transfer to hang forever waiting for the handle count to become less than the number of active requests. Signed-off-by: Alexandre Julliard <julliard@winehq.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-03blame: use .mailmap unconditionallyJunio C Hamano
There really isn't any point in turning off .mailmap. The number of mailmap lookups are bounded by number of lines in the target file, and the real blame processing is much more expensive. If it turns out to be too costly, we should optimize the mailmap lookup itself, instead of avoiding the call. If the author information of commits of the project are relatively clean, .mailmap would have only small number of entries, and the overhead of looking it up will not be high. On the other hand, if the author information is really screwed up that a good .mailmap needs to be maintained to run shortlog, giving uncleaned names in blame output is not helpful at all either. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-02Merge branch 'maint'Junio C Hamano
* maint: cvsserver: Handle re-added files correctly Fix compilation of test-delta
2007-05-02Merge branch 'maint' of git://repo.or.cz/git/fastimport into maintJunio C Hamano
* 'maint' of git://repo.or.cz/git/fastimport: Teach import-tars about GNU tar's @LongLink extension.
2007-05-02cvsserver: Handle re-added files correctlyFrank Lichtenheld
We can't unconditionally assign revision 1.1 to newly added files. In case the file did exist in the past and was deleted we need to honor the old revision number. Signed-off-by: Frank Lichtenheld <frank@lichtenheld.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-02Don't use seq in tests, not everyone has itShawn O. Pearce
For example Mac OS X lacks the seq command. So we cannot use it there. A good old while loop works just as good. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2007-05-02Reuse fixup_pack_header_footer in index-packShawn O. Pearce
Now that fast-import is using a "library function" to handle correcting its packfile's object count and trailing SHA-1 we should reuse the same function in index-pack, to reduce the size of the code we must maintain. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2007-05-02Create pack-write.c for common pack writing codeDana L. How
Include a generalized fixup_pack_header_footer() in this new file. Needed by git-repack --max-pack-size feature in a later patchset. [sp: Moved close(pack_fd) to callers, to support index-pack, and changed name to better indicate it is for packfiles.] Signed-off-by: Dana L. How <danahow@gmail.com> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2007-05-02Merge branch 'gfi-maint' into gfi-masterShawn O. Pearce
* gfi-maint: Teach import-tars about GNU tar's @LongLink extension.
2007-05-02Teach import-tars about GNU tar's @LongLink extension.Johannes Schindelin
This extension allows GNU tar to process file names in excess of the 100 characters defined by the original tar standard. It does this by faking a file, named '././@LongLink' containing the true file name, and then adding the file with a truncated name. The idea is that tar without this extension will write out a file with the long file name, and write the contents into a file with truncated name. Unfortunately, GNU tar does a lousy job at times. When truncating results in a _directory_ name, it will happily use _that_ as a truncated name for the file. An example where this actually happens is gcc-4.1.2, where the full path of the file WeThrowThisExceptionHelper.java truncates _exactly_ before the basename. So, we have to support that ad-hoc extension. This bug was noticed by Chris Riddoch on IRC. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2007-05-01Fix compilation of test-deltaMartin Koegler
The code used write_in_full() without pulling its declarations from the header file. When header is included, usage[] collides with usage() function. Signed-off-by: Martin Koegler <mkoegler@auto.tuwien.ac.at> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-04-30GIT v1.5.2-rc1v1.5.2-rc1Junio C Hamano
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-04-30Merge branch 'maint'Junio C Hamano
* maint: GIT v1.5.1.3 send-email documentation: clarify --smtp-server git.7: Mention preformatted html doc location Clarify SubmittingPatches Checklist git-svn: Add 'find-rev' command Fix symlink handling in git-svn, related to PerlIO
2007-04-30GIT v1.5.1.3v1.5.1.3Junio C Hamano
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-04-30Include mailmap.h in mailmap.c to catch mailmap interface changesAlex Riesen
Signed-off-by: Alex Riesen <raa.lkml@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-04-30Remove pointless calls to access(2) when checking for .mailmapAlex Riesen
read_mailmap already returns not 0 in case of error, and nothing seem to be interested in it. It also is silent about the fact (read_mailmap being to chatty would justify the call to access, but there is no point for it to be and it isn't). Signed-off-by: Alex Riesen <raa.lkml@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-04-30Fix read_mailmap to handle a caller uninterested in repo abbreviationAlex Riesen
The only such a caller builtin-blame.c would pass NULL as the place where to store the abbreviation. Signed-off-by: Alex Riesen <raa.lkml@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-04-30Use strlcpy instead of strncpy in mailmap.cAlex Riesen
strncpy does not NUL-terminate output in case of output buffer too short, and map_email prototype (and usage) does not allow for figuring out what the length of the name is. Signed-off-by: Alex Riesen <raa.lkml@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-04-30send-email documentation: clarify --smtp-serverJari Aalto
It can be either hostname/address, or a full path to a local executable. Signed-off-by: Jari Aalto <jari.aalto@cante.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-04-30git.7: Mention preformatted html doc locationJari Aalto
Signed-off-by: Jari Aalto <jari.aalto@cante.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-04-30Clarify SubmittingPatches ChecklistJari Aalto
Separate things to be checked when making commits, and things to be checked when sending patches. Signed-off-by: Jari Aalto <jari.aalto@cante.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-04-30git-svn: Add 'find-rev' commandAdam Roben
This patch adds a new 'find-rev' command to git-svn that lets you easily translate between SVN revision numbers and git tree-ish. Signed-off-by: Adam Roben <aroben@apple.com> Acked-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-04-30Fix symlink handling in git-svn, related to PerlIOJunio C Hamano
After reading the leading contents from a symlink data obtained from subversion, which we expect to begin with 'link ', the code forked to hash the remainder (which should match readlink() result) using git-hash-objects, by redirecting its STDIN from the filehandle we read that 'link ' from. This was Ok with Perl on modern Linux, but on Mac OS, the read in the parent process slurped more than we asked for in stdio buffer, and the child did not correctly see the "remainder". This attempts to fix the issue by using lower level sysseek and sysread instead of seek and read to bypass the stdio buffer. Signed-off-by: Junio C Hamano <junkio@cox.net> Acked-by: Eric Wong <normalperson@yhbt.net> Acked-by: Seth Falcon <sethfalcon@gmail.com>
2007-04-29Merge branch 'jc/attr'Junio C Hamano
* jc/attr: Add 'filter' attribute and external filter driver definition. Add 'ident' conversion.
2007-04-29Make sure test-genrandom and test-chmtime are builtas part of the main build.Junio C Hamano
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-04-29Make macros to prevent double-inclusion in headers consistent.Junio C Hamano
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-04-29Apply mailmap in git-blame output.Junio C Hamano
This makes git-blame to use the same mailmap used by git-shortlog. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-04-29Split out mailmap handling out of shortlogJunio C Hamano
This splits out a few functions to deal with mailmap from shortlog and makes it a bit more usable from other programs. Most notably, it does not clobber input e-mail address anymore. Signed-off-by: Junio C Hamano <junkio@cox.net>