Code

git.git
19 years agoRename lost+found to lost-found.
Junio C Hamano [Sun, 13 Nov 2005 10:07:02 +0000 (02:07 -0800)]
Rename lost+found to lost-found.

Because we use "lost-found" as the directory name to hold
dangling object names, it is confusing to call the command
git-lost+found, although it makes sense and is even cute ;-).

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoFix compilation warnings in pack-redundant.c
Kai Ruemmler [Sat, 12 Nov 2005 16:33:24 +0000 (17:33 +0100)]
Fix compilation warnings in pack-redundant.c

This fixes compilation warnings where "%ld" was used to print values of
type size_t.

Signed-off-by: Kai Ruemmler <kai.ruemmler@gmx.net>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoDebian: build-depend on libexpat-dev.
Junio C Hamano [Sun, 13 Nov 2005 09:57:33 +0000 (01:57 -0800)]
Debian: build-depend on libexpat-dev.

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoSplit gitk into seperate RPM package
Thomas Matysik [Sun, 13 Nov 2005 04:58:02 +0000 (17:58 +1300)]
Split gitk into seperate RPM package

I don't want to have to install x11-libs and all it's dependencies on
my headless machines, so this patch splits gitk out of the RPM.

The .deb already appears to have gitk split out.

Signed-off-by: Thomas Matysik <thomas@matysik.co.nz>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoAdd expat and expat-devel dependencies (for http-push) to RPM spec.
Thomas Matysik [Sun, 13 Nov 2005 04:56:55 +0000 (17:56 +1300)]
Add expat and expat-devel dependencies (for http-push) to RPM spec.

Signed-off-by: Thomas Matysik <thomas@matysik.co.nz>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoFix fd leak in http-fetch
Nick Hengeveld [Sat, 12 Nov 2005 17:38:28 +0000 (09:38 -0800)]
Fix fd leak in http-fetch

Added a call to finish_request to clean up resources if the server
returned a 404 and there are no alternates left to try.

Signed-off-by: Nick Hengeveld <nickh@reactrix.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoFix for multiple alternates requests in http-fetch
Nick Hengeveld [Sat, 12 Nov 2005 17:11:32 +0000 (09:11 -0800)]
Fix for multiple alternates requests in http-fetch

Stop additional alternates requests from starting if one is already in
progress.  This adds an optional callback which is processed after a slot
has finished running.

Signed-off-by: Nick Hengeveld <nickh@reactrix.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoIgnore built git-lost+found.
Junio C Hamano [Sat, 12 Nov 2005 06:28:03 +0000 (22:28 -0800)]
Ignore built git-lost+found.

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoDocumentation: asciidoc sources are utf-8
Junio C Hamano [Sat, 12 Nov 2005 06:16:59 +0000 (22:16 -0800)]
Documentation: asciidoc sources are utf-8

git-pack-redundant documentation was encoded in latin1, which caused
asciidoc to barf, which expected to see utf-8.  Run tcs to re-encode
it in utf-8.

Also just for fun try my name in Japanese in git-lost+found
documentation ;-)

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoRename .git/lost+found to .git/lost-found.
Junio C Hamano [Fri, 11 Nov 2005 03:16:26 +0000 (19:16 -0800)]
Rename .git/lost+found to .git/lost-found.

Just to avoid confusion that scripts poorly written by somebody
else ;-) might mistake this as a mount point, or backup tools
ignoring the directory.  The latter is probably not a big loss,
however, considering that this directory's contents are to be
used while fresh anyway.

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agogit-lost+found
Junio C Hamano [Mon, 7 Nov 2005 23:15:34 +0000 (15:15 -0800)]
git-lost+found

This command helps you resurrect accidentally lost tags and commits.

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agogit-prune: prune redundant packs
Junio C Hamano [Fri, 11 Nov 2005 18:41:53 +0000 (10:41 -0800)]
git-prune: prune redundant packs

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoMake git-pack-redundant consider alt-odbs
Lukas_Sandström [Fri, 11 Nov 2005 00:25:04 +0000 (01:25 +0100)]
Make git-pack-redundant consider alt-odbs

This patch changes git-pack-redundant so that packfiles
in alternate object directories also are considered when
deciding which objects are redundant.

This functionality is controlled by the flag '--alt-odb'.

Also convert the other flags to the long form, and update
docs and git-repack accordingly.

Signed-off-by: Lukas Sandström <lukass@etek.chalmers.se>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoRename git-pack-intersect to git-pack-redundant
Lukas_Sandström [Wed, 9 Nov 2005 23:16:13 +0000 (00:16 +0100)]
Rename git-pack-intersect to git-pack-redundant

This patch renames git-pack-intersect to git-pack-redundant
as suggested by Petr Baudis. The new name reflects what the
program does, rather than how it does it.

Also fix a small argument parsing bug.

Signed-off-by: Lukas Sandström <lukass@etek.chalmers.se>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoMake git-repack use git-pack-intersect.
Lukas_Sandström [Wed, 9 Nov 2005 01:25:48 +0000 (02:25 +0100)]
Make git-repack use git-pack-intersect.

Signed-off-by: Lukas Sandström <lukass@etek.chalmers.se>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoAdd git-pack-intersect to .gitignore
Lukas_Sandström [Wed, 9 Nov 2005 01:24:51 +0000 (02:24 +0100)]
Add git-pack-intersect to .gitignore

Signed-off-by: Lukas Sandström <lukass@etek.chalmers.se>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoAdd documentation for git-pack-intersect
Lukas_Sandström [Wed, 9 Nov 2005 01:23:55 +0000 (02:23 +0100)]
Add documentation for git-pack-intersect

Signed-off-by: Lukas Sandström <lukass@etek.chalmers.se>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoAdd git-pack-intersect
Lukas_Sandström [Wed, 9 Nov 2005 01:22:40 +0000 (02:22 +0100)]
Add git-pack-intersect

This patch adds the program git-pack-intersect. It is
used to find redundant packs in git repositories.

Signed-off-by: Lukas Sandström <lukass@etek.chalmers.se>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agomerge-one-file: use empty- or common-base condintionally in two-stage merge.
Junio C Hamano [Fri, 11 Nov 2005 03:30:23 +0000 (19:30 -0800)]
merge-one-file: use empty- or common-base condintionally in two-stage merge.

If two sides added the same path completely different thing, it is
easier to see the merge pivoting on /dev/null.  So check the size of
the common section we have found, and empty it if it is too small.

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoDocumentation: git-apply --no-add
Junio C Hamano [Thu, 10 Nov 2005 04:53:54 +0000 (20:53 -0800)]
Documentation: git-apply --no-add

This is a specialized hack to help no-base merges, but other
people might find it useful, so let's document it.

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agomerge-one-file: use common as base, instead of emptiness.
Junio C Hamano [Thu, 10 Nov 2005 04:38:33 +0000 (20:38 -0800)]
merge-one-file: use common as base, instead of emptiness.

Unlike the previous round that merged the path added differently
in each branches using emptiness as the base, compute a common
version and use it as input to 'merge' program.

This would show the resulting (still conflicting) file left in
the working tree as:

common file contents...
<<<<<< FILENAME
version from our branch...
======
version from their branch...
>>>>>> .merge_file_XXXXXX
more common file contents...

when both sides added similar contents.

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agomerge with /dev/null as base, instead of punting O==empty case
Junio C Hamano [Tue, 8 Nov 2005 06:03:46 +0000 (22:03 -0800)]
Merge ... /dev/null as base, instead of punting O==empty case

Instead of leaving the path unmerged in a case where each side
adds different version of the same path, attempt to merge it
with empty base and leave "our" version in the index file, just
like we do for the case in conflicting merge.

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoShow URL in the "Getting <foo> list" http-fetch messages
Petr Baudis [Sat, 12 Nov 2005 00:49:59 +0000 (01:49 +0100)]
Show URL in the "Getting <foo> list" http-fetch messages

Signed-off-by: Petr Baudis <pasky@suse.cz>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agomerge-recursive: Use '~' instead of '_' to separate file names from branch names
Fredrik Kuivinen [Fri, 11 Nov 2005 23:55:36 +0000 (00:55 +0100)]
merge-recursive: Use '~' instead of '_' to separate file names from branch names

Makes it less probable that we get a clash with an existing file,
furthermore Cogito already uses '~' for this purpose.

Signed-off-by: Fredrik Kuivinen <freku045@student.liu.se>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agomerge-recursive: Add copyright notice
Fredrik Kuivinen [Fri, 11 Nov 2005 23:54:55 +0000 (00:54 +0100)]
merge-recursive: Add copyright notice

Signed-off-by: Fredrik Kuivinen <freku045@student.liu.se>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agomerge-recursive: Indent the output properly
Fredrik Kuivinen [Fri, 11 Nov 2005 23:53:07 +0000 (00:53 +0100)]
merge-recursive: Indent the output properly

If we have multiple common ancestors and have to recursively merge
them then the output will be much more readable with this commit.

Signed-off-by: Fredrik Kuivinen <freku045@student.liu.se>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoChange 'cache' to 'index' in the docs
Lukas_Sandström [Fri, 11 Nov 2005 01:12:27 +0000 (02:12 +0100)]
Change 'cache' to 'index' in the docs

This patch makes the documentation refer to the index
as index instead of cache, but some references still
remain. (e.g. git-update-index.txt)

Signed-off-by: Lukas Sandström <lukass@etek.chalmers.se>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoINSTALL: duplicate python requirements from Makefile
Junio C Hamano [Fri, 11 Nov 2005 19:27:03 +0000 (11:27 -0800)]
INSTALL: duplicate python requirements from Makefile

... and refer the reader to Makefile for other things that can be
tweaked.

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoMerge branches 'jc/sb' and 'jc/mb'
Junio C Hamano [Fri, 11 Nov 2005 18:52:59 +0000 (10:52 -0800)]
Merge branches 'jc/sb' and 'jc/mb'

19 years agot1200: use --topo-order to keep the show-branch output stable.
Junio C Hamano [Fri, 11 Nov 2005 02:27:44 +0000 (18:27 -0800)]
t1200: use --topo-order to keep the show-branch output stable.

Because a batch-oriented script creates many commits within a second
on a fast machine, show-branch output of the test results are unstable
without topo-order.

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoFully detect uninteresting commits.
Junio C Hamano [Thu, 10 Nov 2005 23:47:58 +0000 (15:47 -0800)]
Fully detect uninteresting commits.

With the change in the previous round, we are guaranteed to come up
with the list of all relevant merge bases, but sometimes we do not
fully mark unintersting ones due to a horizon effect.  Add a phase to
postprocess, so that we mark all ancestor of "interesting" commit.

This also changes the default ordering of shown commits back to
chronological order, and adds --topo-order flag to show them in
topological order.

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agogit-show-branch: tighten merge-base computation.
Junio C Hamano [Thu, 10 Nov 2005 07:36:15 +0000 (23:36 -0800)]
git-show-branch: tighten merge-base computation.

This makes the merge-base computation resistant to the pathological
case discussed on the list earlier, by doing the same logic as
git-merge-base.  As a side effect, it breaks the command's primary
function to list non-merge commit sequences, which needs to be fixed
separately.

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoAdd test case for merge-base.
Junio C Hamano [Fri, 11 Nov 2005 09:00:52 +0000 (01:00 -0800)]
Add test case for merge-base.

Although it was shown that the "full contamination" was not really full
during the list discussion, the series improves things without incurring
extra parsing cost, and here is a test to check that.

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agomerge-base: avoid unnecessary postprocessing.
Junio C Hamano [Fri, 11 Nov 2005 06:41:44 +0000 (22:41 -0800)]
merge-base: avoid unnecessary postprocessing.

When we have only one merge-base candidates in the result list,
there is no point going back to mark the reachable commits
again.  And that is the most common case, so try not to waste
time on it.  Suggested by Linus.

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agomerge-base: fully contaminate the well.
Junio C Hamano [Fri, 11 Nov 2005 01:21:54 +0000 (17:21 -0800)]
merge-base: fully contaminate the well.

The discussion on the list demonstrated a pathological case where
an ancestor of a merge-base can be left interesting.  This commit
introduces a postprocessing phase to fix it.

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoRPM: arch submodule needs tla.
Junio C Hamano [Fri, 11 Nov 2005 17:31:38 +0000 (09:31 -0800)]
RPM: arch submodule needs tla.

Noticed by Horst von Brand.

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agogit-clone: Allow cloning into directories other than child of current dir.
Andreas Ericsson [Thu, 10 Nov 2005 11:58:08 +0000 (12:58 +0100)]
git-clone: Allow cloning into directories other than child of current dir.

This patch adds -p to mkdir and an explicit check to see if the target
directory exists (since mkdir -p doesn't throw an error if it does).

Signed-off-by: Andreas Ericsson <ae@op5.se>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agogit-clone: Keep remote names when cloning unless explicitly told not to.
Andreas Ericsson [Thu, 10 Nov 2005 11:58:08 +0000 (12:58 +0100)]
git-clone: Keep remote names when cloning unless explicitly told not to.

With this patch the following commands all clone into the local directory
"repo". If repo exists, it will still barf.

git-clone git://host.xz/repo.git
git-clone /path/to/repo/.git
git-clone host.xz:repo.git

I ended up doing the same source-to-target sed'ing for all our company
projects, so it was easier to add it directly to git-clone.

Signed-off-by: Andreas Ericsson <ae@op5.se>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agospecfile cleanups
Chris Wright [Fri, 11 Nov 2005 09:10:29 +0000 (01:10 -0800)]
specfile cleanups

Some specfile cleanups after the split.
- zlib dependency fix, current method is inconsistent, you can
  potentially build a package that you can't install on machine you
  built it on
- Add proper defattr
- Remove trailing '.' in summary
- Add docs to split up packages
- Add git-core dependency for each subpackage
- Move arch import to separate package as well

Signed-off-by: Chris Wright <chrisw@osdl.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoarchimport: handle pika escaping
Martin Langhoff [Fri, 11 Nov 2005 05:00:57 +0000 (18:00 +1300)]
archimport: handle pika escaping

Arch uses pika escaping in some places (but not all!). Specifically, commits of
the type 'patch' use pika escaping in the log entries, which we parse to know
what to add/delete and what to commit.

This patch checks for hints of pika escaping and asks tla to unescape for us.

Originally implemented by Penny Leach <penny@catalyst.net.nz>

Signed-off-by: Martin Langhoff <martin@catalyst.net.nz>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agogit-clone: quote destination directory name
Pavel Roskin [Fri, 11 Nov 2005 05:19:04 +0000 (00:19 -0500)]
git-clone: quote destination directory name

git-clone doesn't quote the full path to the destination directory,
which causes it to fail if the path contains spaces or other characters
interpreted by the shell.

[jc: obviously I was not careful enough.  Pavel, thanks for catching.]

Signed-off-by: Pavel Roskin <proski@gnu.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoAdd --no-commit-id option for git-diff-tree, use it in gitk
Pavel Roskin [Thu, 10 Nov 2005 05:30:12 +0000 (00:30 -0500)]
Add --no-commit-id option for git-diff-tree, use it in gitk

This patch introduces -no-commit-id option for git-diff-tree, which
suppresses commit ID output.

[jc: dropped gitk part for now.]

Signed-off-by: Pavel Roskin <proski@gnu.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agooctopus: do not do AND'ed merge base.
Junio C Hamano [Thu, 10 Nov 2005 06:37:14 +0000 (22:37 -0800)]
octopus: do not do AND'ed merge base.

When doing an octopus, we incorrectly used the previous merge
base as the reference to compute next merge base.  This was
unnecessary, because that can never be better than using the
original HEAD.  And that is far simpler as well ;-).

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoAdd --pretty=fuller
Junio C Hamano [Thu, 10 Nov 2005 06:15:27 +0000 (22:15 -0800)]
Add --pretty=fuller

git log without --pretty showed author and author-date, while
with --pretty=full showed author and committer but no dates.
The new formatting option, --pretty=fuller, shows both name and
timestamp for author and committer.

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoDo not lose author name information to locale gotchas.
Junio C Hamano [Fri, 11 Nov 2005 07:34:08 +0000 (23:34 -0800)]
Do not lose author name information to locale gotchas.

I noticed format-patch loses authorship information of Lukas' patch
when I run git tools with LC_LANG set to ja_JP.  It turns out that
the sed script to set environment variables were not working on his
name (encoded in UTF-8), which is unfortunate but technically correct.

Force sed invocation under C locale because we always want literal byte
semantics.

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoDocumentation: "host:path/to/repo" is git native over ssh.
Junio C Hamano [Fri, 11 Nov 2005 01:46:20 +0000 (17:46 -0800)]
Documentation: "host:path/to/repo" is git native over ssh.

You could also spell it ssh://host:/path/to/repo (or git+ssh,
ssh+git), but without method:// is shorter to type, so mention
only that one in the short and sweet list.

Noticed by Pasky.

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoLet git-clone/git-fetch follow HTTP redirections
Josef Weidendorfer [Thu, 10 Nov 2005 13:12:19 +0000 (14:12 +0100)]
Let git-clone/git-fetch follow HTTP redirections

Otherwise, git-clone silently failed to clone a remote
repository where redirections (ie. a response with a
"Location" header line) are used.

This includes the fixes from Nick Hengeveld.

Signed-off-by: Josef Weidendorfer <Josef.Weidendorfer@gmx.de>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoFix confusing git-update-ref error message
Petr Baudis [Thu, 10 Nov 2005 19:55:13 +0000 (20:55 +0100)]
Fix confusing git-update-ref error message

When git-update-ref has hit the "Ref %s changed to %s" error, I just stare
at it, left puzzled. This patch attempts to reword that to a more useful
and less confusing error message.

Signed-off-by: Petr Baudis <pasky@suse.cz>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoAdd missing git-core and cvsps RPM dependencies.
Jim Radford [Thu, 10 Nov 2005 19:03:08 +0000 (11:03 -0800)]
Add missing git-core and cvsps RPM dependencies.

Signed-off-by: Jim Radford <radford@blackbean.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoMake git-recursive the default strategy for git-pull.
Junio C Hamano [Tue, 8 Nov 2005 10:00:31 +0000 (02:00 -0800)]
Make git-recursive the default strategy for git-pull.

This does two things:

 - It changes the hardcoded default merge strategy for two-head
   git-pull from resolve to recursive.

 - .git/config file acquires two configuration items.
   pull.twohead names the strategy for two-head case, and
   pull.octopus names the strategy for octopus merge.

IOW you are paranoid, you can have the following lines in your
.git/config file and keep using git-merge-resolve when pulling
one remote:

[pull]
twohead = resolve

OTOH, you can say this:

[pull]
twohead = resolve
twohead = recursive

to try quicker resolve first, and when it fails, fall back to
recursive.

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoUse 'merge-base --all' where applicable.
Junio C Hamano [Thu, 10 Nov 2005 02:54:14 +0000 (18:54 -0800)]
Use 'merge-base --all' where applicable.

It may get extra merge base on truly pathological commit histories,
but is a lot easier to understand, explain, and prove correctness.

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoMerge branch 'hold/svn'
Junio C Hamano [Thu, 10 Nov 2005 02:44:42 +0000 (18:44 -0800)]
Merge branch 'hold/svn'

19 years agoMerge branch 'hold/rpm'
Junio C Hamano [Thu, 10 Nov 2005 02:44:18 +0000 (18:44 -0800)]
Merge branch 'hold/rpm'

19 years agogit-apply: do not fail on binary diff when not applying nor checking.
Junio C Hamano [Wed, 9 Nov 2005 22:59:23 +0000 (14:59 -0800)]
git-apply: do not fail on binary diff when not applying nor checking.

We run git-apply with --stat and --summary at the end of the pull
by default, which causes it to barf when the pull brought in changes
to binary files.  Just mark them as binary patch and proceed when
not applying nor checking.

[jc: I almost missed --check until I saw Linus did something similar.]

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoUpdate INSTALL
Junio C Hamano [Wed, 9 Nov 2005 20:40:03 +0000 (12:40 -0800)]
Update INSTALL

Explicitly mention how to install by hand in build-as-user and
install-as-root steps.

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agomerge-recursive: Fix support for branch names containing slashes
Fredrik Kuivinen [Wed, 9 Nov 2005 10:42:57 +0000 (11:42 +0100)]
merge-recursive: Fix support for branch names containing slashes

A branch name could have a slash in it.

Signed-off-by: Fredrik Kuivinen <freku045@student.liu.se>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agomerge-recursive: Fix limited output of rename messages
Fredrik Kuivinen [Wed, 9 Nov 2005 10:36:55 +0000 (11:36 +0100)]
merge-recursive: Fix limited output of rename messages

The previous code did the right thing, but it did it by accident.

Signed-off-by: Fredrik Kuivinen <freku045@student.liu.se>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoFix cvsexportcommit syntax error
Alexander Litvinov [Wed, 9 Nov 2005 07:02:58 +0000 (13:02 +0600)]
Fix cvsexportcommit syntax error

There is a syntax error in cvsexport script:

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoUpdate howto using-topic-branches
Luck, Tony [Tue, 8 Nov 2005 23:52:02 +0000 (15:52 -0800)]
Update howto using-topic-branches

"git resolve" is being deprecated in favour of "git merge".
Update the documentation to reflect this.

Signed-off-by: Tony Luck <tony.luck@intel.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agosparse fixes for http-{fetch,push}.c
Peter Hagervall [Tue, 8 Nov 2005 22:18:31 +0000 (23:18 +0100)]
sparse fixes for http-{fetch,push}.c

Make a bunch of needlessly global functions static, and replace two
K&R-style declarations.

Signed-off-by: Peter Hagervall <hager@cs.umu.se>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agogit-tag -d <tag>: delete tag <tag>
Kai Ruemmler [Tue, 8 Nov 2005 10:44:33 +0000 (11:44 +0100)]
git-tag -d <tag>: delete tag <tag>

This adds option '-d' to git-tag.sh and documents it.

Signed-off-by: Kai Ruemmler <kai.ruemmler@gmx.net>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agomake tests ignorable with "make -i"
Alex Riesen [Tue, 8 Nov 2005 09:51:10 +0000 (10:51 +0100)]
make tests ignorable with "make -i"

Allow failed tests to be ignored using make's "-i". The patch also
disables parallel make in t/. This doesn't make the testing any
different as before: the tests were run sequentially before.

It also allows to run more tests, ignoring the ones usually failing
just to figure out if something else broke.  (Or to ignore plainly
uninteresting situations because of the testing being done on say...
cygwin ;)

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agofix t5000-tar-tree.sh when $TAR isn't set
Alex Riesen [Tue, 8 Nov 2005 10:45:15 +0000 (11:45 +0100)]
fix t5000-tar-tree.sh when $TAR isn't set

$TAR isn't set everywhere. Provide a default (tar)

Signed-off-by: Alex Riesen <raa.lkml@gmail.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoClean build annoyance.
Junio C Hamano [Tue, 8 Nov 2005 16:58:52 +0000 (08:58 -0800)]
Clean build annoyance.

As Pasky pointed out, building in templates directory showed
list of built template files which was unneeded.  This commit
also fixes another build annoyance I recently left in by
accident.

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoSeparate RPMS for programs with non-standard dependencies.
Jim Radford [Sat, 5 Nov 2005 19:38:02 +0000 (11:38 -0800)]
Separate RPMS for programs with non-standard dependencies.

Signed-off-by: Jim Radford <radford@blackbean.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoFix a couple of obvious and insignificant typo.
Junio C Hamano [Sat, 5 Nov 2005 07:30:12 +0000 (23:30 -0800)]
Fix a couple of obvious and insignificant typo.

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoLift the default limit of number of revs.
Yaacov Akiba Slama [Wed, 2 Nov 2005 21:51:58 +0000 (23:51 +0200)]
Lift the default limit of number of revs.

Now that the leak is gone, there is by default no limit of revisions to
import.  No more message about leak when the limit (given by the -l
parameter) is reached.

Signed-off-by: Yaacov Akiba Slama <ya@slamail.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoHandle a revision that only creates a new tag correctly.
Yaacov Akiba Slama [Wed, 2 Nov 2005 21:51:57 +0000 (23:51 +0200)]
Handle a revision that only creates a new tag correctly.

Fix an error when a svn revision consists only of the creation of a new tag
directory (/tags/this_is_a_tag).

Signed-off-by: Yaacov Akiba Slama <ya@slamail.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoBundle file copies from multiple branches into a merge.
Yaacov Akiba Slama [Wed, 2 Nov 2005 21:51:57 +0000 (23:51 +0200)]
Bundle file copies from multiple branches into a merge.

When copying files and/or directories from several branches in one single
revision, all these branches are used as parents of the commit.

Signed-off-by: Yaacov Akiba Slama <ya@slamail.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agocopy_dir becomes copy_path and handles both files and directories
Yaacov Akiba Slama [Wed, 2 Nov 2005 21:51:57 +0000 (23:51 +0200)]
copy_dir becomes copy_path and handles both files and directories

The A (Add) and R (Replace) actions handling are unified.

Signed-off-by: Yaacov Akiba Slama <ya@slamail.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoDon't output error on changes in the nodes /, /tags or /branches
Yaacov Akiba Slama [Wed, 2 Nov 2005 21:51:57 +0000 (23:51 +0200)]
Don't output error on changes in the nodes /, /tags or /branches

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoAdd node_kind function to differentiate between file and directory
Yaacov Akiba Slama [Wed, 2 Nov 2005 21:51:57 +0000 (23:51 +0200)]
Add node_kind function to differentiate between file and directory

Signed-off-by: Yaacov Akiba Slama <ya@slamail.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoUse svn pools to solve the memory leak problem.
Yaacov Akiba Slama [Wed, 2 Nov 2005 21:51:57 +0000 (23:51 +0200)]
Use svn pools to solve the memory leak problem.

Signed-off-by: Yaacov Akiba Slama <ya@slamail.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agogit-am: do not lose already edited final-commit when resuming.
Junio C Hamano [Tue, 8 Nov 2005 08:41:37 +0000 (00:41 -0800)]
git-am: do not lose already edited final-commit when resuming.

The last round stopped munging the patch when resuming, but
failed to preserve final-commit.

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agols-files and read-tree need core.filemode
Alex Riesen [Tue, 8 Nov 2005 08:23:37 +0000 (09:23 +0100)]
ls-files and read-tree need core.filemode

ls-files.c and read-tree.c miss the default configuration, in
particular the filemode=false part.  The recent +x bit flip made me
notice that, because git-merge refused to merge anything saying that
git-pull.sh is not up to date.

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoDebian: packaging updates.
Junio C Hamano [Tue, 8 Nov 2005 09:20:24 +0000 (01:20 -0800)]
Debian: packaging updates.

Do not scatter txt and html documentation into feature subpackages.
Do place man pages into them.

Capture more cvs stuff into git-cvs package.

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoUse consistent shell prompts and example style.
Jon Loeliger [Mon, 7 Nov 2005 14:33:51 +0000 (08:33 -0600)]
Use consistent shell prompts and example style.

Signed-off-by: Jon Loeliger <jdl@freescale.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoAdd --tags documentation, scraped from JC mail.
Jon Loeliger [Mon, 7 Nov 2005 14:03:30 +0000 (08:03 -0600)]
Add --tags documentation, scraped from JC mail.

Signed-off-by: Jon Loeliger <jdl@freescale.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoAdd support for git-http-push to git-push script
Nick Hengeveld [Wed, 2 Nov 2005 19:19:31 +0000 (11:19 -0800)]
Add support for git-http-push to git-push script

Signed-off-by: Nick Hengeveld <nickh@reactrix.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoTutorial: do not use 'git resolve'.
Junio C Hamano [Tue, 8 Nov 2005 06:50:57 +0000 (22:50 -0800)]
Tutorial: do not use 'git resolve'.

Use 'git merge' instead.

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoDocumentation: fix dependency generation.
Junio C Hamano [Tue, 8 Nov 2005 06:21:21 +0000 (22:21 -0800)]
Documentation: fix dependency generation.

The previous rule misses the case where git.txt or tutorial.txt
includes new files.

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoAdd bug isolation howto, scraped from Linus.
Jon Loeliger [Tue, 8 Nov 2005 02:45:25 +0000 (20:45 -0600)]
Add bug isolation howto, scraped from Linus.

Signed-off-by: Jon Loeliger <jdl@freescale.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoIgnore more generated files.
Junio C Hamano [Tue, 8 Nov 2005 02:23:10 +0000 (18:23 -0800)]
Ignore more generated files.

List new commands cvsexportcommit and http-push to .gitignore list.
Also cover the test programs (test-date and test-delta).

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoFix documentation dependency generation.
Junio C Hamano [Tue, 8 Nov 2005 02:21:51 +0000 (18:21 -0800)]
Fix documentation dependency generation.

Documentation/Makefile spent a lot of time to generate include
dependencies, which was quite noticeable especially during "make clean".

Rewrite it to generate just a single dependency file.

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoDocumentation: asciidoc formatting fix for git-cvsexportcommit doc.
Junio C Hamano [Tue, 8 Nov 2005 01:53:06 +0000 (17:53 -0800)]
Documentation: asciidoc formatting fix for git-cvsexportcommit doc.

Annoyingly enough, asciidoc wants the same number of '=' on the second
line as there are characters on the first line.

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agomerge-recursive: Only print relevant rename messages
Fredrik Kuivinen [Mon, 7 Nov 2005 23:19:44 +0000 (00:19 +0100)]
merge-recursive: Only print relevant rename messages

It isn't really interesting to know about the renames that have
already been committed to the branch you are working on. Furthermore,
the 'git-apply --stat' at the end of git-(merge|pull) will tell us
about any renames in the other branch.

With this commit only renames which require a file-level merge will
be printed.

Signed-off-by: Fredrik Kuivinen <freku045@student.liu.se>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoDo not fail on hierarchical tagnames.
Junio C Hamano [Tue, 8 Nov 2005 00:22:34 +0000 (16:22 -0800)]
Do not fail on hierarchical tagnames.

This is a companion patch to 13d1cc3604a1a64cb5a6025bba8af8b74a373963
commit, which made hierarchical branch name possible.  "git tag
v0.99.9/a" would fail otherwise.

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoSmall bugfixes for http-push.c
Johannes Schindelin [Mon, 7 Nov 2005 18:23:11 +0000 (19:23 +0100)]
Small bugfixes for http-push.c

This patch fixes three things:

- older libexpat does not know about enum XML_Status
- as in my patch for http-fetch, do not rely on a curl result in
free()d data
- calloc the new_lock structure

Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoMake http-push smarter about creating remote dirs
Nick Hengeveld [Mon, 7 Nov 2005 19:39:37 +0000 (11:39 -0800)]
Make http-push smarter about creating remote dirs

Remember object directories known to exist in the remote repo and don't
bother trying to create them.

Signed-off-by: Nick Hengeveld <nickh@reactrix.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoIntroducing: git-cvsexportcommit
Martin Langhoff [Mon, 7 Nov 2005 04:57:08 +0000 (17:57 +1300)]
Introducing: git-cvsexportcommit

A script that can replay commits git into a CVS checkout. Tries to ensure the
sanity of the operation and supports mainly manual usage.

If you are reckless enough, you can ask it to autocommit when everything has
applied cleanly. Combined with a couple more scripts could become part of
a git2cvs gateway.

Should support adds/removes and binary files.

Signed-off-by: Martin Langhoff <martin@catalyst.net.nz>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoDocumentation update: use git branch -d foo where applicable
Kai Ruemmler [Mon, 7 Nov 2005 08:23:59 +0000 (09:23 +0100)]
Documentation update: use git branch -d foo where applicable

This updates documentation to use git branch -d foo in favour of
rm .git/refs/heads/foo

Signed-off-by: Kai Ruemmler <kai.ruemmler@gmx.net>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoRecover dropped +x bit from git-pull.sh by accident.
Junio C Hamano [Mon, 7 Nov 2005 20:52:07 +0000 (12:52 -0800)]
Recover dropped +x bit from git-pull.sh by accident.

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoDocumentation: talk about guts of merge in tutorial.
Junio C Hamano [Mon, 7 Nov 2005 07:29:35 +0000 (23:29 -0800)]
Documentation: talk about guts of merge in tutorial.

While discussing Jon's ASCII art on merge operations with him, I
realized that the tutorial stops talking about the plumbing
details halfway.  So fill in the gory details, and update the
examples to use 'git-merge', not 'git-resolve'.

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoRefactored merge options into separate merge-options.txt.
Jon Loeliger [Mon, 7 Nov 2005 05:30:56 +0000 (23:30 -0600)]
Refactored merge options into separate merge-options.txt.

Refactored fetch options into separate fetch-options.txt.
Made git-merge use merge-options.
Made git-fetch use fetch-options.
Made git-pull use merge-options and fetch-options.
Added --help option to git-pull and git-format-patch scripts.
Rewrote Documentation/Makefile to dynamically determine
include dependencies.

Signed-off-by: Jon Loeliger <jdl@freescale.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agohttp-fetch: do not use curl_message after releasing it
Johannes Schindelin [Sun, 6 Nov 2005 23:59:39 +0000 (00:59 +0100)]
http-fetch: do not use curl_message after releasing it

When curl_message is released using curl_multi_remove_handle(), it's
contents are undefined. Therefore, get the information before releasing it.

Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoAllow GIT_DIR to be an absolute path
Johannes Schindelin [Sun, 6 Nov 2005 23:36:15 +0000 (00:36 +0100)]
Allow GIT_DIR to be an absolute path

This fixes a problem in safe_create_leading_directories() when the
argument starts with a '/' (i.e. the path is absolute).

Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agohttp-push.c: include with angle bracket, not dq.
Paul Collins [Sun, 6 Nov 2005 21:07:45 +0000 (21:07 +0000)]
http-push.c: include with angle bracket, not dq.

Do not search the current directory when including expat.h, since it
is not supplied by git.

Signed-off-by: Paul Collins <paul@briny.ondioline.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agoSet up remotes/origin to track all remote branches.
Junio C Hamano [Sun, 6 Nov 2005 08:52:57 +0000 (00:52 -0800)]
Set up remotes/origin to track all remote branches.

This implements the idea Daniel Barkalow came up with, to match
the remotes/origin created by clone by default to the workflow I
use myself in my guinea pig repository, to have me eat my own
dog food.

We probably would want to use either .git/refs/local/heads/*
(idea by Linus) or .git/refs/heads/origin/* instead to reduce
the local ref namespace pollution.

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agogit-status: do not mark unmerged paths as committable.
Junio C Hamano [Mon, 7 Nov 2005 01:37:40 +0000 (17:37 -0800)]
git-status: do not mark unmerged paths as committable.

An unmerged path appears as both "Updated but not checked in" list,
and "Changed but not updated" list.  We are not going to commit that
path until it is resolved, so remove it from the former list.

Signed-off-by: Junio C Hamano <junkio@cox.net>
19 years agols-files: --others should not say unmerged paths are unknown.
Junio C Hamano [Mon, 7 Nov 2005 01:26:31 +0000 (17:26 -0800)]
ls-files: --others should not say unmerged paths are unknown.

Jon Loeliger noticed that an unmerged path appears as
"Untracked" in git-status output, even though we show the same
path as updated/changed.  Since --others means "we have not told
git about that path", we should not show unmerged paths --
obviously, git knows about them; it just does not know what we
want to do about them yet.

Signed-off-by: Junio C Hamano <junkio@cox.net>