summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2005-08-16Teach applymbox to keep the Subject: line.Libravatar Junio C Hamano3-4/+27
This corresponds to the -k flag to git format-patch --mbox option. The option should probably not be used when applying a real e-mail patch, but is needed when format-patch and applymbox pair is used for cherrypicking. Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-16Use LF and allow comments in objects/info/alternates file.Libravatar Junio C Hamano1-11/+15
Yes, using the same format for the file and the environment variable was a big mistake. This uses LF as the path separator, and allows lines that begin with '#' to be comments. ':' is no longer a separator in objects/info/alternates file. Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-16git-format-patch fixes.Libravatar Junio C Hamano1-11/+20
Introduces --keep-subjects flag to tell it not to munge the first line of the commit message. Running "git applymbox" on the output from "git format-patch -m -k" would preserve the original commit information better this way. At the same time, prefix Subject: on the first line of the commit, to help people cut&copy. Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-16[PATCH] Improve handling of "." and ".." in git-diff-*Libravatar Linus Torvalds3-42/+55
This fixes up usage of ".." (without an ending slash) and "." (with or without the ending slash) in the git diff family. It also fixes pathspec matching for the case of an empty pathspec, since a "." in the top-level directory (or enough ".." under subdirectories) will result in an empty pathspec. We used to not match it against anything, but it should in fact match everything. Signed-off-by: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-16[PATCH] Fix test failure due to overly strict .git directory testsLibravatar Linus Torvalds1-3/+2
We may not actually have a valid HEAD at all times, so relax the validity tests for a .git subdirectory accordingly. Signed-off-by: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-16[PATCH] Make "git diff" work inside relative subdirectoriesLibravatar Linus Torvalds8-19/+147
We always show the diff as an absolute path, but pathnames to diff are taken relative to the current working directory (and if no pathnames are given, the default ends up being all of the current working directory). Note that "../xyz" also works, so you can do cd linux/drivers/char git diff ../block and it will generate a diff of the linux/drivers/block changes. Signed-off-by: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-16[PATCH] Add a bit more links to the commands to the main git(7) page.Libravatar Junio C Hamano1-0/+24
There are many programs like git-add not described at all, and the organization of the list of commands may be suboptimal, but we have to start somewhere. Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-16[PATCH] Reformat git-show-branches-script documentation.Libravatar Junio C Hamano1-9/+11
... using ListingBlock of asciidoc. Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-16[PATCH] Make do_each_ref() follow symlinks.Libravatar Matt Draisey1-1/+1
Because there is no reason not to, and this makes things a bit safer when running "git prune". [jc: I do not necessarily agree with the reasoning of the original author that it is a good way to keep "git prune" from stomping on objects to have a symlink that points at .git/refs of the repository A in the .git/refs of the repository B when repository A borrows object database from repository B. For one thing, the object database that everybody borrows objects from may not even have its own .git/refs hierarchy. Come to think of it, maybe we should disallow symlink inside .git/refs hierarchy; we update the files there by creat/rename pair, so having symlinks would not work anyway when you do anything that would update them.] Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-16[PATCH] Add -k kill keyword expansion option to git-cvsimport - revisedLibravatar Martin Langhoff2-6/+13
Early versions of git-cvsimport defaulted to using preexisting keyword expansion settings. This change preserves compatibility with existing cvs imports and allows new repository migrations to kill keyword expansion. After exploration of the different -k modes in the cvs protocol, we use -kk which kills keyword expansion wherever possible. Against the protocol spec, -ko and -kb will sometimes expand keywords. Should improve our chances of detecting merges and reduce imported repository size. Signed-off: Martin Langhoff <martin.langhoff@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-16[PATCH] Fix local pull that uses packs.Libravatar Junio C Hamano1-5/+7
The patch mixed up the sha1 for the object being pulled, and the sha1 the pull engine internally use to represent the name of the pack that contains the object being pulled. Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-16[PATCH] Support packs in local-pullLibravatar Daniel Barkalow1-21/+91
If it doesn't find an object, it looks for an index that contains it and uses the same methods on that instead. Signed-off-by: Daniel Barkalow <barkalow@iabervon.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-16[PATCH] Add function to read an index file from an arbitrary filename.Libravatar Daniel Barkalow2-2/+10
Note that the pack file has to be in the usual location if it gets installed later. Signed-off-by: Daniel Barkalow <barkalow@iabervon.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-16[PATCH] Fixed two bugs in git-cvsimport-script.Libravatar iso-8859-1?Q?David_K=E5gedal2-3/+10
The git-cvsimport-script had a copule of small bugs that prevented me from importing a big CVS repository. The first was that it didn't handle removed files with a multi-digit primary revision number. The second was that it was asking the CVS server for "F" messages, although they were not handled. I also updated the documentation for that script to correspond to actual flags. Signed-off-by: David K?5gedal <davidk@lysator.liu.se> Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-16[PATCH] cvsgit fixes: spaces in filenames and CVS server dialog woesLibravatar Matthias Urlichs1-11/+23
Problems found while importing dasher's CVS: * Allow spaces in filenames. * cvsps may create unnamed branches with revisions that don't really exist, which causes the CVS server to return something we haven't hitherto expected. * Report deleted files when being verbose. * Also, report the commit date. Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-16Make tools use DESTDIR as well (otherwise rpm build is broken).Libravatar Chris Wright1-1/+1
Signed-off-by: Chris Wright <chrisw@osdl.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-15[PATCH] Make git-format-patch's signoff option more consistentLibravatar Johannes Schindelin1-5/+8
Since git-commit-script has a "--signoff" option, use that in git-format-patch-script, too (and since partial option names are supported,"--sign" is still valid). Also, if the message already contains the S-O-B line, silently ignore the "--signoff" request. Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-15Tentative fix to git-commit-scriptLibravatar Junio C Hamano1-5/+11
The recent change to give the multiple commit message source was not carrying over the authorship information from -C/-c commits correctly. The export of the environment variable happens only in the subprocess, not the main process that eventually runs git-commit-tree. The right fix might be to teach git-commit-script to grok the From: and Date: lines at the beginning of the commit message just like git-applymbox knows how, but this has to do until that enhancement happens. Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-15[PATCH] Add documentation for git repack and git-prune-packed.Libravatar Junio C Hamano4-0/+97
[jc: the patch forgot to update the main git.txt documentation, making all these new documentation practically no-op, so I added a minimum attempt linking them from there.] Signed-off-by: Ryan Anderson <ryan@michonline.com>
2005-08-15[PATCH] clean up git scriptLibravatar Junio C Hamano1-15/+18
Makes git work with a pure POSIX shell (tested with bash --posix and ash). Right now git causes ash to choke on the redundant shift on line two. Reduces the number of system calls git makes just to do a usage statement from 22610 to 1122, and the runtime for same from 349ms to 29ms on my x86 Linux box. Presents a standard usage statement, and pretty prints the available commands in a form that does not scroll off small terminals. [jc: while shifting when $# was zero was a bug, the original patch failed to shift when it needs to, which I fixed up.] Signed-off-by: Amos Waterland <apw@rossby.metr.ou.edu> Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-15Audit rev-parse users.Libravatar Junio C Hamano3-4/+4
Make sure that we say --verify when we want to get a single SHA1 name. Also when we say --verify, --revs-only is redundant. Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-15Keep excellent tutorial for using topic branches by Tony LuckLibravatar Junio C Hamano1-0/+153
I would eventually like to move this to become a part of the tutorial, but anyway, this was an excellent post that describes how topic branches can be used to keep track of local changes.
2005-08-15[PATCH] Run Ispell through git.txtLibravatar Yasushi SHOJI1-6/+6
Signed-off-by: Yasushi SHOJI <yashi@atmark-techno.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-15Show which branch you are on in git-status output.Libravatar Junio C Hamano1-1/+9
When not on the "master" branch, show which branch we are working on in the git-status message. Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-15Add git-show-branches-scriptLibravatar Junio C Hamano4-0/+125
Often I find myself wanting to do quick branches check when I am not in the windowing environment and cannot run gitk. This stupid script shows commits leading to the heads of interesting branches with indication which ones belong to which branches, so that fork point is somewhat discernible without using gitk. Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-15[PATCH] Add some simple howtos, culled from the mailing list.Libravatar Ryan Anderson3-0/+288
I think these are useful, and I think putting them in a new "howto" directory might help some users until we get to the point of splitting up the tutorial to be easier to read. Given the authorship, I think it's safe to put these in the repository. Signed-off-by: Ryan Anderson <ryan@michonline.com>
2005-08-15[PATCH] Fixed/Extended example for update hookLibravatar Josef Weidendorfer1-3/+9
Add sample code to distinguish --force rebased head and simple fast-forward. At the same time fixes a real bug; the "new ref" path was using a wrong parameter. Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-15Add cheap local clone '-s' flag to git-clone-scriptLibravatar Junio C Hamano1-15/+26
Using the $GIT_OBJECT_DIRECTORY/info/alternates mechanism, create a new repository that borrows objects from the original repository when --shared flag is given in addition to --local. It is worth pointing out that the "cloned" repository depends on the original repository, so this should be used only when you can reasonably trust that the original repository would not disappear without your knowing. Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-15Alternate object pool mechanism updates.Libravatar Junio C Hamano3-71/+88
It was a mistake to use GIT_ALTERNATE_OBJECT_DIRECTORIES environment variable to specify what alternate object pools to look for missing objects when working with an object database. It is not a property of the process running the git commands, but a property of the object database that is partial and needs other object pools to complete the set of objects it lacks. This patch allows you to have $GIT_OBJECT_DIRECTORY/info/alternates whose contents is in exactly the same format as the environment variable, to let an object database name alternate object pools it depends on. Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-14Documentation updates.Libravatar Junio C Hamano13-17/+231
Linus brought up that documentation for many commands have incorrect attribution. I started counting lines again, but ended up adding a handful of missing manual pages. Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-13[PATCH] plug memory leak in diff.c::diff_free_filepair()Libravatar Yasushi SHOJI3-8/+7
When I run git-diff-tree on big change, it seems the command eats so much memory. so I just put git under valgrind to see what's going on. diff_free_filespec_data() doesn't free diff_filespec itself. [jc: I ended up doing things slightly differently from Yasushi's patch. The original idea was to use free_filespec_data() only to free the data portion and keep useing the filespec itself, but no existing code seems to do things that way, so I just yanked that part out.] Signed-off-by: Yasushi SHOJI <yashi@atmark-techno.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-13[PATCH] fix null TZ problems on os/xLibravatar Brad Roberts2-3/+3
It seems that the localtime() libc routine doesn't care for finding a TZ that's empty. It's ok with TZ not being set. Setting the TZ to GMT allowed these tests to pass. $ uname -v Darwin Kernel Version 7.9.0: Wed Mar 30 20:11:17 PST 2005; root:xnu/xnu-517.12.7.obj~1/RELEASE_PPC Signed-off-by: Brad Roberts <braddr@puremagic.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-13[PATCH] fix git-checkout-cache segfault on pariscLibravatar James Bottomley1-1/+2
The index cleanup code is executed via atexit() which is *after* main has completed, so the stack allocated cache_file has gone out of scope. Parisc seems to use stack in the destructor functions, so cache_file gets partially overwritten leading to the predictable disastrous consequences. [jc: Just to make sure, I audited other users of the function hold_index_file_for_update() to make sure they do not have this problem; everybody else uses non-stack cache_file structure and is fine. Thanks, James.] Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-13[PATCH] Make get_sha1_basic() more carefulLibravatar Linus Torvalds1-1/+1
The "get_sha1_hex()" function is designed to work with SHA1 hex strings that may be followed by arbitrary crud. However, that's not acceptable for "get_sha1()" which is used for command line arguments etc: we don't want to silently allow random characters after the end of the SHA1. So verify that the hex string is all we have. Signed-off-by: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-13[PATCH] Make sure git-resolve-script always works on commitsLibravatar Linus Torvalds2-9/+5
You can resolve a tag, and it does the right thing except that it might end up writing the tag itself into the resulting HEAD, which will confuse subsequent operations no end. This makes sure that when we resolve two heads, we will have turned them into proper commits before we start acting on them. This also fixes the parsing of "treeish^0", which would incorrectly resolve to "treeish" instead of causing an error. Signed-off-by: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-13Add SubmittingPatchesLibravatar Junio C Hamano1-0/+130
Not that I have stricter patch submission standard than ordinary projects, I wanted to have it to make sure people understand what they are doing when they add their own Signed-off-by line. Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-13Add --signoff and --verify option to git commit.Libravatar Junio C Hamano1-4/+72
As brought up in the discussion which followed a patch to add a signed-off-by line with the --sign flag to format-patch from Johannes Schindelin, add --signoff to the git commit command. Also add --verify to make sure the lines you introduced are clean, which is more useful in commit but not very much in format-patch as it was originally implemented, because finding botches at format-patch time is too late. Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-12Debianization updatesLibravatar Matthias Urlichs2-27/+30
git-tk should be architecture independent. git-core forgot to depend on perl. Signed-Off-By: Matthias Urlichs <smurf@debian.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-12Fix debianization: mark git-tk architecture neutral.Libravatar Junio C Hamano2-1/+7
Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-12Adjust binary packaging to dest=>DESTDIR change.Libravatar Junio C Hamano2-2/+2
Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-12Make tools/ directory first-class citizen.Libravatar Junio C Hamano3-4/+3
Tools directory being separate is just a historical coincidence. Build and install together with the main directory, just like the clean target does. Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-12[PATCH] Unify Makefile indentationLibravatar Petr Baudis1-14/+14
Use <tab> instead of two spaces uniformly in the Makefile, even in the ifdefs. Gives it a nice consistent look. [jc: At the same time I indented the nested ifdefs to make them slightly easier to read.] Signed-off-by: Petr Baudis <pasky@ucw.cz> Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-12[PATCH] Use $DESTDIR instead of $destLibravatar Petr Baudis4-11/+12
$DESTDIR is more usual during the build than $dest and is what is usually used in the makefiles, so let's use it too. Signed-off-by: Petr Baudis <pasky@ucw.cz> Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-12Make CFLAGS overridable from make command line.Libravatar Pavel Roskin2-25/+28
This patch renames COPTS to CFLAGS, because it's COPTS that was user overridable. Also, -Wall is moved there because it's optional. What was CFLAGS is now ALL_CFLAGS, which users should not override. Defines are added to DEFINES. Since ALL_CFLAGS is recursively expanded, it uses the final value of DEFINES. Implicit rules are made explicit since the implicit rules use CFLAGS rather than ALL_CFLAGS. I believe that serious projects should not rely on implicit rules anyway. Percent rules are used because they are used already and because they don't need the .SUFFIXES target. [jc: in addition to updating the patch for 0.99.4, I fixed up a glitch in Pavel's original patch which compiled sha1.o out of mozilla-sha1/sha1.c, where it should have left the resulting object file in mozilla-sha1 directory for later "ar".] Signed-off-by: Pavel Roskin <proski@gnu.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-12Clean generated files a bit more, to cope with Debian build droppings.Libravatar Junio C Hamano1-2/+5
Also attempt to build a source package for debian.
2005-08-12[PATCH] Add "--sign" option to git-format-patch-scriptLibravatar Johannes Schindelin1-1/+11
This adds the option "--sign" to git-format-patch-script which adds a Signed-off-by: line automatically. Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-12fetch-pack: start multi-head pulling.Libravatar Junio C Hamano3-27/+51
This is a beginning of resurrecting the multi-head pulling support for git-fetch-pack command. The git-fetch-script wrapper still only knows about fetching a single head, without renaming, so it is not very useful unless you directly call git-fetch-pack itself yet. It also fixes a longstanding obsolete description of how the command discovers the list of local commits.
2005-08-12Update unpack-objects usage and documentation.Libravatar Junio C Hamano2-2/+8
It long supported -q flag to suppress progress meter without properly being documented.
2005-08-11[PATCH] Also parse objects we already haveLibravatar Daniel Barkalow1-0/+1
In the case where we don't know from context what type an object is, but we don't have to fetch it, we need to parse it to determine the type before processing it. Signed-off-by: Daniel Barkalow <barkalow@iabervon.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-08-11[PATCH] Fix parallel pull dependancy tracking.Libravatar Daniel Barkalow1-25/+32
It didn't refetch an object it already had (good), but didn't process it, either (bad). Synchronously process anything you already have. Signed-off-by: Daniel Barkalow <barkalow@iabervon.org> Signed-off-by: Junio C Hamano <junkio@cox.net>