summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2006-03-26tar-tree: Use write_entry() to write the archive contentsRene Scharfe
Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-26tar-tree: Introduce write_entry()Rene Scharfe
... and use it initially to write global extended header records. Improvements compared to the old write_header(): - Uses a struct ustar_header instead of hardcoded offsets. - Takes one struct strbuf as path argument instead of a (basedir, prefix, name) tuple. - Not only writes the tar header, but also the contents of the file, if any. - Does not write directly into the ring buffer. This allows the code to be layed out more naturally, because there is no more ordering constraint. Before we had to first finish writing the extended header, now we can construct the extended and normal headers in parallel. - The typeflag parameter has been replaced by (reasonable) magic values. path == NULL indicates an extended header, additionally sha1 == NULL means it is a global extended header. Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-26tar-tree: Use SHA1 of root tree for the basedirRene Scharfe
... instead of the made-up "0". Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-26git-apply: safety fixesLinus Torvalds
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>
2006-03-25Removed bogus "<snap>" identifier.Jon Loeliger
Signed-off-by: Jon Loeliger <jdl@jdl.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-25Clarify and expand some hook documentation.Jon Loeliger
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>
2006-03-25commit-tree: check return value from write_sha1_file()Junio C Hamano
... found by Matthias Kestenholz. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-24Merge branch 'jc/cvsimport'Junio C Hamano
* jc/cvsimport: cvsimport: fix reading from rev-parse cvsimport: honor -i and non -i upon subsequent imports
2006-03-24Merge branch 'jc/pull'Junio C Hamano
* jc/pull: git-pull: reword "impossible to fast-forward" message. git-pull: further safety while on tracking branch.
2006-03-24Merge branch 'jc/fetch'Junio C Hamano
* jc/fetch: fetch: exit non-zero when fast-forward check fails.
2006-03-24send-email: Identify author at the top when sending e-mailJunio C Hamano
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>
2006-03-22Format tweaks for asciidoc.Francis Daly
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>
2006-03-22git-pull: reword "impossible to fast-forward" message.Junio C Hamano
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-22git-pull: further safety while on tracking branch.Junio C Hamano
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>
2006-03-22git-apply: do not barf when updating an originally empty file.Junio C Hamano
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-21http-push.c: squelch C90 warnings.Junio C Hamano
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>
2006-03-21fix field width/precision warnings in blame.cLuck, Tony
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>
2006-03-21contrib/git-svn: allow rebuild to work on non-linear remote headsEric Wong
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>
2006-03-20http-push: don't assume char is signedNick Hengeveld
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>
2006-03-20http-push: add support for deleting remote branchesNick Hengeveld
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>
2006-03-20Be verbose when !initial commitYasushi SHOJI
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>
2006-03-20Fix multi-paragraph list items in OPTIONS sectionFrancis Daly
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.
2006-03-20http-fetch: nicer warning for a server with unreliable 404 statusJunio C Hamano
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>
2006-03-20generate-cmdlist: style cleanups.Junio C Hamano
Instead of giving multiple commands concatenated with semicolon to sed, write them on separate lines. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-20Add missing semicolon to sed command.Shawn Pearce
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>
2006-03-19unpack_delta_entry(): reduce memory footprint.Junio C Hamano
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>
2006-03-19git.el: Added a function to diff against the other heads in a merge.Alexandre Julliard
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>
2006-03-19git.el: Get the default user name and email from the repository config.Alexandre Julliard
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>
2006-03-19git.el: More robust handling of subprocess errors when returning strings.Alexandre Julliard
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>
2006-03-18Makefile: Add TAGS and tags targetsFredrik Kuivinen
Signed-off-by: Fredrik Kuivinen <freku045@student.liu.se> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-18ls-files: Don't require exclude files to end with a newline.Alexandre Julliard
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>
2006-03-18git-pull: run repo-config with dash form.Junio C Hamano
... as discussed on the list for consistency. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-18cvsimport: fix reading from rev-parseJunio C Hamano
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>
2006-03-18Merge branch 'jc/empty'Junio C Hamano
* jc/empty: revision traversal: --remove-empty fix (take #2). revision traversal: --remove-empty fix. Conflicts: revision.c (adjust for the updates by Fredrik)
2006-03-183% tighter packs for freeNicolas Pitre
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>
2006-03-18Rewrite synopsis to clarify the two primary uses of git-checkout.Jon Loeliger
Fix a few typo/grammar problems. Signed-off-by: Jon Loeliger <jdl@jdl.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-18Fix minor typo.Jon Loeliger
Signed-off-by: Jon Loeliger <jdl@jdl.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-18Reference git-commit-tree for env vars.Jon Loeliger
Signed-off-by: Jon Loeliger <jdl@jdl.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-18Clarify git-rebase example commands.Jon Loeliger
Signed-off-by: Jon Loeliger <jdl@jdl.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-18Document the default source of template files.Jon Loeliger
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>
2006-03-18Call out the two different uses of git-branch and fix a typo.Jon Loeliger
Signed-off-by: Jon Loeliger <jdl@jdl.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-18Add git-show referenceJon Loeliger
Signed-off-by: Jon Loeliger <jdl@jdl.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-17fetch: exit non-zero when fast-forward check fails.Junio C Hamano
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-17cvsimport: honor -i and non -i upon subsequent importsJunio C Hamano
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>
2006-03-17blame: Fix git-blame <directory>Fredrik Kuivinen
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>
2006-03-17blame: Nicer outputFredrik Kuivinen
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>
2006-03-16fix imap-send for OSXRandal L. Schwartz
This patch works... I've been using it to stay current. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-16Let merge set the default strategy.Mark Hollomon
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>
2006-03-15Fix broken slot reuse when fetching alternatesNick Hengeveld
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>
2006-03-13Merge branch 'jc/pack'Junio C Hamano
* jc/pack: pack-objects: simplify "thin" pack. verify-pack -v: show delta-chain histogram.