aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* contrib/git-svn: stabilize memory usage for big fetchesEric Wong2006-03-25
| | | | | | | | | | | | | | | | | | We should be safely able to import histories with thousands of revisions without hogging up lots of memory. With this, we lose the ability to autocorrect mistakes when people specify revisions in reverse, but it's probably no longer a problem since we only have one method of log parsing nowadays. I've added an extra check to ensure that revision numbers do increment. Also, increment the version number to 0.11.0. I really should just call it 1.0 soon... Signed-off-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
* git-apply: safety fixesLinus Torvalds2006-03-25
| | | | | | | | | | | | | | | | | | | This was triggered by me testing the "@@" numbering shorthand by GNU patch, which not only showed that git-apply thought it meant the number was duplicated (when it means that the second number is 1), but my tests showed than when git-apply mis-understood the number, it would then not raise an alarm about it if the patch ended early. Now, this doesn't actually _matter_, since with a three-line context, the only case that "x,1" will be shorthanded to "x" is when x itself is 1 (in which case git-apply got it right), but the fact that git-apply would also silently accept truncated patches was a missed opportunity for additional sanity-checking. So make git-apply refuse to look at a patch fragment that ends early. Signed-off-by: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
* Removed bogus "<snap>" identifier.Jon Loeliger2006-03-24
| | | | | Signed-off-by: Jon Loeliger <jdl@jdl.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* Clarify and expand some hook documentation.Jon Loeliger2006-03-24
| | | | | | | | Clarify update and post-update hooks. Made a few references to the hooks documentation. Signed-off-by: Jon Loeliger <jdl@jdl.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* commit-tree: check return value from write_sha1_file()Junio C Hamano2006-03-24
| | | | | | ... found by Matthias Kestenholz. Signed-off-by: Junio C Hamano <junkio@cox.net>
* Merge branch 'jc/cvsimport'Junio C Hamano2006-03-23
|\ | | | | | | | | | | * jc/cvsimport: cvsimport: fix reading from rev-parse cvsimport: honor -i and non -i upon subsequent imports
| * cvsimport: fix reading from rev-parseJunio C Hamano2006-03-18
| | | | | | | | | | | | | | | | | | The updated code reads the tip of the current branch before and after the import runs, but forgot to chomp what we read from the command. The read-tree command did not them with the trailing LF. Signed-off-by: Junio C Hamano <junkio@cox.net>
| * cvsimport: honor -i and non -i upon subsequent importsJunio C Hamano2006-03-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Documentation says -i is "import only", so without it, subsequent import should update the current branch and working tree files in a sensible way. "A sensible way" defined by this commit is "act as if it is a git pull from foreign repository which happens to be CVS not git". So: - If importing into the current branch (note that cvsimport requires the tracking branch is pristine -- you checked out the tracking branch but it is your responsibility not to make your own commits there), fast forward the branch head and match the index and working tree using two-way merge, just like "git pull" does. - If importing into a separate tracking branch, update that branch head, and merge it into your current branch, again, just like "git pull" does. Signed-off-by: Junio C Hamano <junkio@cox.net>
* | Merge branch 'jc/pull'Junio C Hamano2006-03-23
|\ \ | | | | | | | | | | | | | | | * jc/pull: git-pull: reword "impossible to fast-forward" message. git-pull: further safety while on tracking branch.
| * | git-pull: reword "impossible to fast-forward" message.Junio C Hamano2006-03-22
| | | | | | | | | | | | Signed-off-by: Junio C Hamano <junkio@cox.net>
| * | git-pull: further safety while on tracking branch.Junio C Hamano2006-03-22
| | | | | | | | | | | | | | | | | | | | | | | | Running 'git pull' while on the tracking branch has a built-in safety valve to fast-forward the index and working tree to match the branch head, but it errs on the safe side too cautiously. Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | Merge branch 'jc/fetch'Junio C Hamano2006-03-23
|\ \ \ | | | | | | | | | | | | | | | | * jc/fetch: fetch: exit non-zero when fast-forward check fails.
| * | | fetch: exit non-zero when fast-forward check fails.Junio C Hamano2006-03-17
| | |/ | |/| | | | | | | Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | send-email: Identify author at the top when sending e-mailJunio C Hamano2006-03-23
| | | | | | | | | | | | | | | | | | | | | | | | git-send-email did not check if the sender is the same as the patch author. Follow the "From: at the beginning" convention to propagate the patch author correctly. Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | Format tweaks for asciidoc.Francis Daly2006-03-22
| |/ |/| | | | | | | | | | | | | Some documentation "options" were followed by independent preformatted paragraphs. Now they are associated plain text paragraphs. The difference is clear in the generated html. Signed-off-by: Junio C Hamano <junkio@cox.net>
* | git-apply: do not barf when updating an originally empty file.Junio C Hamano2006-03-22
| | | | | | | | Signed-off-by: Junio C Hamano <junkio@cox.net>
* | http-push.c: squelch C90 warnings.Junio C Hamano2006-03-21
| | | | | | | | | | | | | | If you write code after declarations in a block, gcc scolds you with "warning: ISO C90 forbids mixed declarations and code". Signed-off-by: Junio C Hamano <junkio@cox.net>
* | fix field width/precision warnings in blame.cLuck, Tony2006-03-21
| | | | | | | | | | | | | | | | Using "size_t" values for printf field width/precision upsets gcc, it wants to see an "int". Signed-off-by: Tony Luck <tony.luck@intel.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | contrib/git-svn: allow rebuild to work on non-linear remote headsEric Wong2006-03-20
| | | | | | | | | | | | | | | | | | | | | | | | Because committing back to an SVN repository from different machines can result in different lineages, two different repositories running git-svn can result in different commit SHA1s (but of the same tree). Sometimes trees that are tracked independently are merged together (usually via children), resulting in non-unique git-svn-id: lines in rev-list. Signed-off-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | http-push: don't assume char is signedNick Hengeveld2006-03-20
| | | | | | | | | | | | | | | | Declare remote_dir_exists[] as signed char to be sure that values of -1 are valid. Signed-off-by: Nick Hengeveld <nickh@reactrix.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | http-push: add support for deleting remote branchesNick Hengeveld2006-03-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Processes new command-line arguments -d and -D to remove a remote branch if the following conditions are met: - one branch name is present on the command line - the specified branch name matches exactly one remote branch name - the remote HEAD is a symref - the specified branch is not the remote HEAD - the remote HEAD resolves to an object that exists locally (-d only) - the specified branch resolves to an object that exists locally (-d only) - the specified branch is an ancestor of the remote HEAD (-d only) Signed-off-by: Nick Hengeveld <nickh@reactrix.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | Be verbose when !initial commitYasushi SHOJI2006-03-20
| | | | | | | | | | | | | | | | | | | | | | | | | | verbose option in git-commit.sh lead us to run git-diff-index, which needs a commit-ish we are making diff against. When we are commiting the fist set, we obviously don't have any commit-ish in the repo. So we just skip the git-diff-index run. It might be possible to produce diff against empty but do we need that? Signed-off-by: Yasushi SHOJI <yashi@atmark-techno.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | Fix multi-paragraph list items in OPTIONS sectionFrancis Daly2006-03-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch makes the html docs right, makes the asciidoc docs a bit odd but consistent with what is there already, and makes the manpages look OK using docbook-xsl 1.68, but miss a paragraph separator when using 1.69. For the manpages, current is like -A <author_file> Read a file with lines on the form username = User's Full Name <email@addr.es> and use "User's Full Name <email@addr.es>" as the GIT With this patch, docbook-xsl v1.68 looks like -A <author_file> Read a file with lines on the form username = User's Full Name <email@addr.es> and use "User's Full Name <email@addr.es>" as the GIT author and while docbook-xsl v1.69 becomes -A <author_file> Read a file with lines on the form username = User's Full Name <email@addr.es> and use "User's Full Name <email@addr.es>" as the GIT author and The extra indentation is to keep the v1.69 manpage looking sane.
* | http-fetch: nicer warning for a server with unreliable 404 statusJunio C Hamano2006-03-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | When a repository otherwise properly prepared is served by a dumb HTTP server that sends "No such page" output with 200 status for human consumption to a request for a page that does not exist, the users will get an alarming "File X corrupt" error message. Hint that they might be dealing with such a server at the end and suggest running fsck-objects to check if the result is OK (the pack-fallback code does the right thing in this case so unless a loose object file was actually corrupt the result should check OK). Signed-off-by: Junio C Hamano <junkio@cox.net>
* | generate-cmdlist: style cleanups.Junio C Hamano2006-03-19
| | | | | | | | | | | | | | Instead of giving multiple commands concatenated with semicolon to sed, write them on separate lines. Signed-off-by: Junio C Hamano <junkio@cox.net>
* | Add missing semicolon to sed command.Shawn Pearce2006-03-19
| | | | | | | | | | | | | | generate-cmdlist.sh is giving errors messages from sed on Mac OS 10.4 due to a missing semicolon. Signed-off-by: Junio C Hamano <junkio@cox.net>
* | unpack_delta_entry(): reduce memory footprint.Junio C Hamano2006-03-19
| | | | | | | | | | | | | | | | | | | | | | Currently we unpack the delta data from the pack and then unpack the base object to apply that delta data to it. When getting an object that is deeply deltified, we can reduce memory footprint by unpacking the base object first and then unpacking the delta data, because we will need to keep at most one delta data in memory that way. Signed-off-by: Junio C Hamano <junkio@cox.net>
* | git.el: Added a function to diff against the other heads in a merge.Alexandre Julliard2006-03-19
| | | | | | | | | | | | | | | | | | git-diff-file-merge-head generates a diff against the first merge head, or with a prefix argument against the nth head. Bound to `d h' by default. Signed-off-by: Alexandre Julliard <julliard@winehq.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | git.el: Get the default user name and email from the repository config.Alexandre Julliard2006-03-19
| | | | | | | | | | | | | | | | | | If user name or email are not set explicitly, get them from the user.name and user.email configuration values before falling back to the Emacs defaults. Signed-off-by: Alexandre Julliard <julliard@winehq.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | git.el: More robust handling of subprocess errors when returning strings.Alexandre Julliard2006-03-19
| | | | | | | | | | | | | | | | Make sure that functions that call a git process and return a string always return nil when the subprocess failed. Signed-off-by: Alexandre Julliard <julliard@winehq.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | Makefile: Add TAGS and tags targetsFredrik Kuivinen2006-03-18
| | | | | | | | | | Signed-off-by: Fredrik Kuivinen <freku045@student.liu.se> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | ls-files: Don't require exclude files to end with a newline.Alexandre Julliard2006-03-18
| | | | | | | | | | | | | | | | Without this patch, the last line of an exclude file is silently ignored if it doesn't end with a newline. Signed-off-by: Alexandre Julliard <julliard@winehq.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | git-pull: run repo-config with dash form.Junio C Hamano2006-03-18
| | | | | | | | | | | | ... as discussed on the list for consistency. Signed-off-by: Junio C Hamano <junkio@cox.net>
* | Merge branch 'jc/empty'Junio C Hamano2006-03-18
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | * jc/empty: revision traversal: --remove-empty fix (take #2). revision traversal: --remove-empty fix. Conflicts: revision.c (adjust for the updates by Fredrik)
| * | revision traversal: --remove-empty fix (take #2).Junio C Hamano2006-03-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Marco Costalba reports that --remove-empty omits the commit that created paths we are interested in. try_to_simplify_commit() logic was dropping a parent we introduced those paths against, which I think is not what we meant. Instead, this makes such parent parentless. Signed-off-by: Junio C Hamano <junkio@cox.net>
| * | revision traversal: --remove-empty fix.Junio C Hamano2006-03-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Marco Costalba reports that --remove-empty omits the commit that created paths we are interested in. try_to_simplify_commit() logic was dropping a parent we introduced those paths against, which I think is not what we meant. Instead, this marks such parent uninteresting. The traversal does not go beyond that parent as advertised, but we still say that the current commit changed things from that parent. Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | 3% tighter packs for freeNicolas Pitre2006-03-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch makes for 3.4% smaller pack with the git repository, and a bit more than 3% smaller pack with the kernel repository. And so with _no_ measurable CPU difference. Signed-off-by: Nicolas Pitre <nico@cam.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | Rewrite synopsis to clarify the two primary uses of git-checkout.Jon Loeliger2006-03-17
| | | | | | | | | | | | | | | | | | | | | Fix a few typo/grammar problems. Signed-off-by: Jon Loeliger <jdl@jdl.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | Fix minor typo.Jon Loeliger2006-03-17
| | | | | | | | | | | | | | | Signed-off-by: Jon Loeliger <jdl@jdl.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | Reference git-commit-tree for env vars.Jon Loeliger2006-03-17
| | | | | | | | | | | | | | | Signed-off-by: Jon Loeliger <jdl@jdl.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | Clarify git-rebase example commands.Jon Loeliger2006-03-17
| | | | | | | | | | | | | | | Signed-off-by: Jon Loeliger <jdl@jdl.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | Document the default source of template files.Jon Loeliger2006-03-17
| | | | | | | | | | | | | | | | | | | | | Also explain a bit more about how the template option works. Signed-off-by: Jon Loeliger <jdl@jdl.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | Call out the two different uses of git-branch and fix a typo.Jon Loeliger2006-03-17
| | | | | | | | | | | | | | | Signed-off-by: Jon Loeliger <jdl@jdl.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | Add git-show referenceJon Loeliger2006-03-17
| |/ |/| | | | | | | Signed-off-by: Jon Loeliger <jdl@jdl.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | blame: Fix git-blame <directory>Fredrik Kuivinen2006-03-17
| | | | | | | | | | | | | | | | | | Before this patch git-blame <directory> gave non-sensible output. (It assigned blame to some random file in <directory>) Abort with an error message instead. Signed-off-by: Fredrik Kuivinen <freku045@student.liu.se> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | blame: Nicer outputFredrik Kuivinen2006-03-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | As pointed out by Junio, it may be dangerous to cut off people's names after 15 bytes. If the name is encoded in an encoding which uses more than one byte per code point we may end up with outputting garbage. Instead of trying to do something smart, just output the entire name. We don't gain much screen space by chopping it off anyway. Furthermore, only output the file name if we actually found any renames. Signed-off-by: Fredrik Kuivinen <freku045@student.liu.se> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | fix imap-send for OSXRandal L. Schwartz2006-03-15
| | | | | | | | | | | | This patch works... I've been using it to stay current. Signed-off-by: Junio C Hamano <junkio@cox.net>
* | Let merge set the default strategy.Mark Hollomon2006-03-15
| | | | | | | | | | | | | | | | | | | | If the user does not set a merge strategy for git-pull, let git-merge calculate a default strategy. [jc: with minor stylistic tweaks] Signed-off-by: Mark Hollomon <markhollomon@comcast.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | Fix broken slot reuse when fetching alternatesNick Hengeveld2006-03-15
| | | | | | | | | | | | | | | | | | | | When fetching alternates, http-fetch may reuse the slot to fetch non-http alternates if http-alternates does not exist. When doing so, it now needs to update the slot's finished status so run_active_slot waits for the non-http alternates request to finish. Signed-off-by: Nick Hengeveld <nickh@reactrix.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | Merge branch 'jc/pack'Junio C Hamano2006-03-13
|\ \ | | | | | | | | | | | | | | | * jc/pack: pack-objects: simplify "thin" pack. verify-pack -v: show delta-chain histogram.