git.git
18 years agoAdd tests for the last two fixes.
Junio C Hamano [Sat, 26 May 2007 07:26:20 +0000 (00:26 -0700)]
Add tests for the last two fixes.

This updates t4014 to check the two fixes for git-am and git-commit
we observed with "echo" that does backslash interpolation by default
without being asked with -e option.

Signed-off-by: Junio C Hamano <redacted>
18 years agogit-commit: use printf '%s\n' instead of echo on user-supplied strings
Junio C Hamano [Sat, 26 May 2007 05:00:54 +0000 (22:00 -0700)]
git-commit: use printf '%s\n' instead of echo on user-supplied strings

This fixes the same issue git-am had, which was fixed by Jeff
King in the previous commit.  Cleverly enough, this commit's log
message is a good test case at the same time.

Signed-off-by: Junio C Hamano <redacted>
18 years agogit-am: use printf instead of echo on user-supplied strings
Jeff King [Sat, 26 May 2007 03:42:36 +0000 (23:42 -0400)]
git-am: use printf instead of echo on user-supplied strings

Under some implementations of echo (such as that provided by
dash), backslash escapes are recognized without any other
options. This means that echo-ing user-supplied strings may
cause any backslash sequences in them to be converted. Using
printf resolves the ambiguity.

This bug can be seen when using git-am to apply a patch
whose subject contains the character sequence "\n"; the
characters are converted to a literal newline. Noticed by
Szekeres Istvan.

Signed-off-by: Jeff King <redacted>
Signed-off-by: Junio C Hamano <redacted>
18 years agofixes to output of git-verify-pack -v
Nicolas Pitre [Sat, 26 May 2007 03:37:40 +0000 (23:37 -0400)]
fixes to output of git-verify-pack -v

Now that the default delta depth is 50, it is a good idea to also bump
MAX_CHAIN to 50.

While at it, make the display a bit prettier by making the MAX_CHAIN
limit inclusive, and display the number of deltas that are above that
limit at the end instead of the beginning.

Signed-off-by: Nicolas Pitre <redacted>
Signed-off-by: Junio C Hamano <redacted>
18 years agoDocumentation: Add definition of "evil merge" to GIT Glossary
Jakub Narebski [Fri, 25 May 2007 22:37:39 +0000 (00:37 +0200)]
Documentation: Add definition of "evil merge" to GIT Glossary

Signed-off-by: Jakub Narebski <redacted>
Signed-off-by: Junio C Hamano <redacted>
18 years agoReplace the last 'dircache's by 'index'
Jakub Narebski [Fri, 25 May 2007 22:37:40 +0000 (00:37 +0200)]
Replace the last 'dircache's by 'index'

Signed-off-by: Jakub Narebski <redacted>
Signed-off-by: Junio C Hamano <redacted>
18 years agoDocumentation: Clean up links in GIT Glossary
Jakub Narebski [Fri, 25 May 2007 22:37:38 +0000 (00:37 +0200)]
Documentation: Clean up links in GIT Glossary

Ensure that the same link is not repeated in single glossary entry,
and that there is no self-link i.e. link to current entry.

Add links to other definitions in git glossary.

Remove inappropriate (nonsense) links, or change link to link to
correct definition (to correct term).

Signed-off-by: Jakub Narebski <redacted>
Signed-off-by: Junio C Hamano <redacted>
18 years agoAdded git-p4 submit --trust-me-like-a-fool for the adventurous users :)
Simon Hausmann [Fri, 25 May 2007 20:34:30 +0000 (22:34 +0200)]
Added git-p4 submit --trust-me-like-a-fool for the adventurous users :)

Signed-off-by: Simon Hausmann <redacted>
18 years agoForgot to remove this TODO item when I made --with-origin the default :)
Simon Hausmann [Fri, 25 May 2007 17:43:38 +0000 (19:43 +0200)]
Forgot to remove this TODO item when I made --with-origin the default :)

Signed-off-by: Simon Hausmann <redacted>
18 years agoShortcut the case where we have no origin branch
Simon Hausmann [Fri, 25 May 2007 09:36:42 +0000 (11:36 +0200)]
Shortcut the case where we have no origin branch

Signed-off-by: Simon Hausmann <redacted>
18 years agoMake --with-origin the default for syncing.
Simon Hausmann [Fri, 25 May 2007 08:36:10 +0000 (10:36 +0200)]
Make --with-origin the default for syncing.

Signed-off-by: Simon Hausmann <redacted>
18 years agoMake --with-origin also work without origin :)
Simon Hausmann [Fri, 25 May 2007 08:28:46 +0000 (10:28 +0200)]
Make --with-origin also work without origin :)

Signed-off-by: Simon Hausmann <redacted>
18 years agoMake git-p4 work with packed refs (don't use os.path.exists to check for the
Simon Hausmann [Fri, 25 May 2007 06:49:18 +0000 (08:49 +0200)]
Make git-p4 work with packed refs (don't use os.path.exists to check for the
existance of a ref)

Signed-off-by: Simon Hausmann <redacted>
18 years agoAvoid creating non-p4 branches in remotes/p4 off of remotes/origin
Simon Hausmann [Fri, 25 May 2007 06:44:41 +0000 (08:44 +0200)]
Avoid creating non-p4 branches in remotes/p4 off of remotes/origin

Signed-off-by: Simon Hausmann <redacted>
18 years agoAdd a configuration option to control diffstat after merge
Alex Riesen [Wed, 23 May 2007 21:01:29 +0000 (23:01 +0200)]
Add a configuration option to control diffstat after merge

The diffstat can be controlled either with command-line options
(--summary|--no-summary) or with merge.diffstat. The default is
left as it was: diffstat is active by default.

Signed-off-by: Alex Riesen <redacted>
Signed-off-by: Junio C Hamano <redacted>
18 years agoAdd another verbosity level to git-fetch
Alex Riesen [Wed, 23 May 2007 21:31:13 +0000 (23:31 +0200)]
Add another verbosity level to git-fetch

Use "-v -v" to run git-fetch-pack in verbose mode.

Signed-off-by: Alex Riesen <redacted>
Signed-off-by: Junio C Hamano <redacted>
18 years agoVerbose connect messages to show the IP addresses used
Alex Riesen [Wed, 23 May 2007 21:34:27 +0000 (23:34 +0200)]
Verbose connect messages to show the IP addresses used

Also, the patch makes the error messages more verbose. Helps when
diagnosing connect problems on weird systems.

Signed-off-by: Alex Riesen <redacted>
Signed-off-by: Junio C Hamano <redacted>
18 years agoAdd option to cvs update before export
Robin Rosenberg [Thu, 24 May 2007 15:06:55 +0000 (17:06 +0200)]
Add option to cvs update before export

Signed-off-by: Robin Rosenberg <redacted>
Signed-off-by: Junio C Hamano <redacted>
18 years agoRemove git-applypatch
Junio C Hamano [Fri, 25 May 2007 02:25:25 +0000 (19:25 -0700)]
Remove git-applypatch

The previous one removed git-applymbox, which was the sole user
of this tool.

Signed-off-by: Junio C Hamano <redacted>
18 years agogit-applymbox: Remove command
Petr Baudis [Sun, 20 May 2007 00:10:13 +0000 (02:10 +0200)]
git-applymbox: Remove command

I believe noone uses git-applymbox, and noone definitely should, since it
is supposed to be completely superseded and everything by its younger
cousin git-am. The only known person in the universe to use it was Linus
and he declared some time ago that he will try to use git-am instead in his
famous dotest script.

The trouble is that git-applymbox existence creates confusing UI. I'm a bit
like a recycled newbie to the git porcelain and *I* was confused by
git-applymbox primitiveness until I've realized a while later that I'm of
course using the wrong command.

Signed-off-by: Petr Baudis <redacted>
Signed-off-by: Junio C Hamano <redacted>
18 years agoMerge branch 'maint'
Junio C Hamano [Fri, 25 May 2007 04:35:29 +0000 (21:35 -0700)]
Merge branch 'maint'

* maint:
  fix memory leak in parse_object when check_sha1_signature fails
  name-rev: tolerate clock skew in committer dates
  Update bash completion for git-config options
  Teach bash completion about recent log long options
  Teach bash completion about 'git remote update'
  Update bash completion header documentation
  Remove a duplicate --not option in bash completion
  Teach bash completion about git-shortlog
  Hide the plumbing diff-{files,index,tree} from bash completion
  Update bash completion to ignore some more plumbing commands

18 years agoMerge branch 'master' of git://repo.or.cz/git/fastimport into maint
Junio C Hamano [Fri, 25 May 2007 04:34:59 +0000 (21:34 -0700)]
Merge branch 'master' of git://repo.or.cz/git/fastimport into maint

* 'master' of git://repo.or.cz/git/fastimport:
  Update bash completion for git-config options
  Teach bash completion about recent log long options
  Teach bash completion about 'git remote update'
  Update bash completion header documentation
  Remove a duplicate --not option in bash completion
  Teach bash completion about git-shortlog
  Hide the plumbing diff-{files,index,tree} from bash completion
  Update bash completion to ignore some more plumbing commands

18 years agoEnsure git-repack -a -d --max-pack-size=N deletes correct packs
Dana How [Fri, 25 May 2007 02:06:42 +0000 (19:06 -0700)]
Ensure git-repack -a -d --max-pack-size=N deletes correct packs

The packfile portion of the "remove redundant" code
near the bottom of git-repack.sh is broken when
pack splitting occurs.  Particularly since this is
the only place where we automatically delete packfiles,
make sure it works properly for all cases,  old or new.

Signed-off-by: Dana L. How <redacted>
Signed-off-by: Junio C Hamano <redacted>
18 years agoMake "git gc" pack all refs by default
Linus Torvalds [Thu, 24 May 2007 18:41:39 +0000 (11:41 -0700)]
Make "git gc" pack all refs by default

I've taught myself to use "git gc" instead of doing the repack explicitly,
but it doesn't actually do what I think it should do.

We've had packed refs for a long time now, and I think it just makes sense
to pack normal branches too. So I end up having to do

git pack-refs --all --prune

in order to get a nice git repo that doesn't have any unnecessary files.

So why not just do that in "git gc"? It's not as if there really is any
downside to packing branches, even if they end up changing later. Quite
often they don't, and even if they do, so what?

Also, make the default for refs packing just be an unambiguous "do it",
rather than "do it by default only for non-bare repositories". If you want
that behaviour, you can always just add a

[gc]
packrefs = notbare

in your ~/.gitconfig file, but I don't actually see why bare would be any
different (except for the broken reason that http-fetching used to be
totally broken, and not doing it just meant that it didn't even get
fixed in a timely manner!).

So here's a trivial patch to make "git gc" do a better job. Hmm?

Signed-off-by: Linus Torvalds <redacted>
Signed-off-by: Junio C Hamano <redacted>
18 years agoTeach mailsplit about Maildir's
Fernando J. Pereda [Thu, 24 May 2007 22:15:36 +0000 (00:15 +0200)]
Teach mailsplit about Maildir's

Signed-off-by: Fernando J. Pereda <redacted>
Signed-off-by: Junio C Hamano <redacted>
18 years agoMerge branch 'maint-1.5.1' into maint
Junio C Hamano [Fri, 25 May 2007 02:01:50 +0000 (19:01 -0700)]
Merge branch 'maint-1.5.1' into maint

* maint-1.5.1:
  fix memory leak in parse_object when check_sha1_signature fails
  name-rev: tolerate clock skew in committer dates

18 years agofix memory leak in parse_object when check_sha1_signature fails
Carlos Rica [Fri, 25 May 2007 01:46:22 +0000 (03:46 +0200)]
fix memory leak in parse_object when check_sha1_signature fails

When check_sha1_signature fails, program is not terminated:
it prints an error message and returns NULL, so the
buffer returned by read_sha1_file should be freed before.

Signed-off-by: Carlos Rica <redacted>
Signed-off-by: Junio C Hamano <redacted>
18 years agoname-rev: tolerate clock skew in committer dates
Junio C Hamano [Thu, 24 May 2007 19:20:42 +0000 (12:20 -0700)]
name-rev: tolerate clock skew in committer dates

In git.git repository, "git-name-rev v1.3.0~158" cannot name the
rev, while adjacent revs can be named.

This was because it gives up traversal from the tips of existing
refs as soon as it sees a commit that has older commit timestamp
than what is being named.  This is usually a good heuristics,
but v1.3.0~158 has a slightly older commit timestamp than
v1.3.0~157 (i.e. it's child), as these two were made in a
separate repostiory (in fact, in a different continent).

This adds a hardcoded slop value (1 day) to the cut-off
heuristics to work this kind of problem around.  The current
algorithm essentially runs around from the available tips down
to ancient commits and names every single rev available that are
newer than cut-off date, so a single day slop would not add that
much overhead in repositories with long enough history where the
performance of name-rev matters.

I think the algorithm could be made a bit smarter by deepening
the graph on demand as a new commit is asked to be named (this
would require rewriting of name_rev() function not to recurse
itself but use a traversal list like revision.c traverser does),
but that would be a separate issue.

Acked-by: Johannes Schindelin <redacted>
Signed-off-by: Junio C Hamano <redacted>
18 years agoOops, fix --with-origin to /really/ also call git fetch :)
Simon Hausmann [Thu, 24 May 2007 20:28:28 +0000 (22:28 +0200)]
Oops, fix --with-origin to /really/ also call git fetch :)

Signed-off-by: Simon Hausmann <redacted>
18 years agoAdded support for --with-origin with multi-branch imports
Simon Hausmann [Thu, 24 May 2007 20:25:36 +0000 (22:25 +0200)]
Added support for --with-origin with multi-branch imports

Signed-off-by: Simon Hausmann <redacted>
18 years agoForgot to remove this return statement from debugging
Simon Hausmann [Thu, 24 May 2007 20:10:40 +0000 (22:10 +0200)]
Forgot to remove this return statement from debugging

Signed-off-by: Simon Hausmann <redacted>
18 years agoFix creating the remotes/p4 branches based on origin/* for the multi-branch import
Simon Hausmann [Thu, 24 May 2007 19:23:04 +0000 (21:23 +0200)]
Fix creating the remotes/p4 branches based on origin/* for the multi-branch import

Signed-off-by: Simon Hausmann <redacted>
18 years agoReplace \r\n with \n when importing from p4 on Windows
Marius Storm-Olsen [Thu, 24 May 2007 12:07:55 +0000 (14:07 +0200)]
Replace \r\n with \n when importing from p4 on Windows

Signed-off-by: Marius Storm-Olsen <redacted>
18 years agoCorrect key bindings to Control-<foo>
Shawn O. Pearce [Thu, 24 May 2007 06:33:13 +0000 (02:33 -0400)]
Correct key bindings to Control-<foo>

Alberto Bertogli reported on #git that git-gui was exiting with
alt-q, while gitk on the same system was exiting with ctrl-q.
That was not what I wanted.  I really wanted M1B to be bound to
the Control key on most non-Mac OS X platforms, but according to
Sam Vilain M1 on most systems means alt.  Since gitk always does
control, I'm doing the same thing for all non-Mac OS X systems.

Signed-off-by: Shawn O. Pearce <redacted>
18 years agoUpdate bash completion for git-config options
Shawn O. Pearce [Thu, 24 May 2007 06:07:45 +0000 (02:07 -0400)]
Update bash completion for git-config options

A few new configuration options grew out of the woodwork during the
1.5.2 series.  Most of these are pretty easy to support a completion
of, so we do so.

I wanted to also add completion support for the <driver> part of
merge.<driver>.name but to do that we have to look at all of the
.gitattributes files and guess what the unique set of <driver>
strings would be.  Since this appears to be non-trivial I'm punting
on it at this time.

Signed-off-by: Shawn O. Pearce <redacted>
18 years agoTeach bash completion about recent log long options
Shawn O. Pearce [Thu, 24 May 2007 05:51:30 +0000 (01:51 -0400)]
Teach bash completion about recent log long options

(Somewhat) recently git-log learned about --reverse (to show commits
in the opposite order) and a looong time ago I think it learned
about --raw (to show the raw diff, rather than a unified diff).
These are both useful options, so we should make them easy for the
user to complete.

Signed-off-by: Shawn O. Pearce <redacted>
18 years agoTeach bash completion about 'git remote update'
Shawn O. Pearce [Thu, 24 May 2007 05:46:49 +0000 (01:46 -0400)]
Teach bash completion about 'git remote update'

Recently the git-remote command grew an update subcommand, which
can be used to execute git-fetch across multiple repositories
in a single step.  These can be configured with the 'remotes.*'
configuration options, so we can offer completion for any name that
matches and appears to be useful to git-remote update.

Signed-off-by: Shawn O. Pearce <redacted>
18 years agoAllow environment variables to be unset in the processes started by run_command
Alex Riesen [Wed, 23 May 2007 20:21:39 +0000 (22:21 +0200)]
Allow environment variables to be unset in the processes started by run_command

To unset a variable, just specify its name, without "=". For example:

    const char *env[] = {"GIT_DIR=.git", "PWD", NULL};
    const char *argv[] = {"git-ls-files", "-s", NULL};
    int err = run_command_v_opt_cd_env(argv, RUN_GIT_CMD, ".", env);

The PWD will be unset before executing git-ls-files.

Signed-off-by: Alex Riesen <redacted>
Signed-off-by: Junio C Hamano <redacted>
18 years agoAdd ability to specify environment extension to run_command
Alex Riesen [Tue, 22 May 2007 21:48:47 +0000 (23:48 +0200)]
Add ability to specify environment extension to run_command

There is no way to specify and override for the environment:
there'd be no user for it yet.

Signed-off-by: Alex Riesen <redacted>
Signed-off-by: Junio C Hamano <redacted>
18 years agoAdd run_command_v_opt_cd: chdir into a directory before exec
Alex Riesen [Tue, 22 May 2007 21:48:23 +0000 (23:48 +0200)]
Add run_command_v_opt_cd: chdir into a directory before exec

It can make code simplier (no need to preserve cwd) and safer
(no chance the cwd of the current process is accidentally forgotten).

Signed-off-by: Alex Riesen <redacted>
Signed-off-by: Junio C Hamano <redacted>
18 years agoMerge branch 'maint'
Junio C Hamano [Thu, 24 May 2007 05:37:23 +0000 (22:37 -0700)]
Merge branch 'maint'

* maint:
  Fix possible coredump with fast-import --import-marks
  Refactor fast-import branch creation from existing commit
  fast-import: Fix crash when referencing already existing objects
  fast-import: Fix uninitialized variable
  Documentation: fix git-config.xml generation

18 years agoMerge branch 'maint' of git://repo.or.cz/git/fastimport into maint
Junio C Hamano [Thu, 24 May 2007 05:37:03 +0000 (22:37 -0700)]
Merge branch 'maint' of git://repo.or.cz/git/fastimport into maint

* 'maint' of git://repo.or.cz/git/fastimport:
  Fix possible coredump with fast-import --import-marks
  Refactor fast-import branch creation from existing commit
  fast-import: Fix crash when referencing already existing objects
  fast-import: Fix uninitialized variable

18 years agoUpdate bash completion header documentation
Shawn O. Pearce [Thu, 24 May 2007 05:36:46 +0000 (01:36 -0400)]
Update bash completion header documentation

 1) Added a note about supporting the long options for most commands,
    as we have been doing so for quite some time.

 2) Include a notice that these routines are covered by the GPL,
    as that may not be obvious, even though they are distributed
    as part of the core Git distribution.

 3) Added a short section on how to send patches to the routines,
    and to whom they should get sent to.  Currently that is me,
    as I am the active maintainer.

Signed-off-by: Shawn O. Pearce <redacted>
18 years agoMerge branch 'maint-1.5.1' into maint
Junio C Hamano [Thu, 24 May 2007 05:34:11 +0000 (22:34 -0700)]
Merge branch 'maint-1.5.1' into maint

* maint-1.5.1:
  Documentation: fix git-config.xml generation

18 years agoRemove a duplicate --not option in bash completion
Shawn O. Pearce [Thu, 24 May 2007 05:26:58 +0000 (01:26 -0400)]
Remove a duplicate --not option in bash completion

This was just me being silly; I put the --not option into the
completion list twice.  There's no duplicates shown in the shell
as the shell removes them before showing them to the user.  But we
really don't need the duplicates in the source script either.

Signed-off-by: Shawn O. Pearce <redacted>
18 years agoTeach bash completion about git-shortlog
Shawn O. Pearce [Thu, 24 May 2007 05:25:34 +0000 (01:25 -0400)]
Teach bash completion about git-shortlog

We've had completion for git-log for quite some time, but just
today I noticed we don't have it for the new builtin shortlog
that runs git-log internally.  This is indeed a handy thing to
have completion for, especially when your branch names are of
the Very-Very-Long-and-Hard/To-Type/Variety/That-Some-Use.

Signed-off-by: Shawn O. Pearce <redacted>
18 years agoHide the plumbing diff-{files,index,tree} from bash completion
Shawn O. Pearce [Thu, 24 May 2007 05:01:02 +0000 (01:01 -0400)]
Hide the plumbing diff-{files,index,tree} from bash completion

The diff-* programs are meant to be plumbing for the diff frontend;
most end users aren't invoking these commands directly.  Consequently
we should avoid showing them as possible completions.

Signed-off-by: Shawn O. Pearce <redacted>
18 years agoFix possible coredump with fast-import --import-marks
Shawn O. Pearce [Thu, 24 May 2007 04:32:31 +0000 (00:32 -0400)]
Fix possible coredump with fast-import --import-marks

When e8438420bb7d368bec3647b90c557b9931582267 allowed us to reload
the marks table on subsequent runs of fast-import we really broke
things, as we set pack_id to MAX_PACK_ID for any objects we imported
into the marks table.  Creating a branch from that mark should fail
as we attempt to read the object through a non-existant packed_git
pointer.  Instead we have to use the normal Git object system to
locate the older commit, as we ourselves do not have a reference
to the packed_git it resides in.

This bug only occurred because t9300 was not complete enough.
When we added the --import-marks feature we didn't actually test
its implementation enough to verify the function worked as intended.
I have corrected that, and included the changes as part of this fix.
Prior versions of fast-import fail the new test(s); this commit
allows them to pass.

Credit for this bug find goes to Simon Hausmann <redacted> as
he recently identified a similiar bug in the tree lazy-loading path.

Signed-off-by: Shawn O. Pearce <redacted>
18 years agoRefactor fast-import branch creation from existing commit
Shawn O. Pearce [Thu, 24 May 2007 04:05:19 +0000 (00:05 -0400)]
Refactor fast-import branch creation from existing commit

To resolve a corner case uncovered by Simon Hausmann I need to
reuse the logic for the SHA-1 expression version of the 'from '
command within the mark version of the 'from ' command.  This change
doesn't alter any functionality, but is merely breaking the common
code out to a function that I can reuse.

Signed-off-by: Shawn O. Pearce <redacted>
18 years agofast-import: Fix crash when referencing already existing objects
Simon Hausmann [Wed, 23 May 2007 21:01:49 +0000 (23:01 +0200)]
fast-import: Fix crash when referencing already existing objects

Commit a5c1780a0355a71b9fb70f1f1977ce726ee5b8d8 sets the pack_id of existing
objects to MAX_PACK_ID. When the same object is referenced later again it is
found in the local object hash. With such a pack_id fast-import should not try
to locate that object in the newly created pack(s).

Signed-off-by: Simon Hausmann <redacted>
Signed-off-by: Shawn O. Pearce <redacted>
18 years agofast-import: Fix uninitialized variable
Simon Hausmann [Wed, 23 May 2007 21:00:22 +0000 (23:00 +0200)]
fast-import: Fix uninitialized variable

Fix uninitialized last_object->no_free variable that is accessed in
store_object.

Signed-off-by: Simon Hausmann <redacted>
Signed-off-by: Shawn O. Pearce <redacted>
18 years agoDocumentation: fix git-config.xml generation
James Bowes [Wed, 23 May 2007 22:16:12 +0000 (18:16 -0400)]
Documentation: fix git-config.xml generation

Signed-off-by: James Bowes <redacted>
Signed-off-by: Junio C Hamano <redacted>
18 years agoLoad the user map from p4 only once at run-time.
Simon Hausmann [Wed, 23 May 2007 22:24:52 +0000 (00:24 +0200)]
Load the user map from p4 only once at run-time.

Signed-off-by: Simon Hausmann <redacted>
18 years agogitweb.perl - Optionally send archives as .zip files
Mark Levedahl [Sun, 20 May 2007 15:46:46 +0000 (11:46 -0400)]
gitweb.perl - Optionally send archives as .zip files

git-archive already knows how to generate an archive as a tar or a zip
file, but gitweb did not. zip archvies are much more usable in a Windows
environment due to native support and this patch allows a site admin the
option to deliver zip rather than tar files. The selection is done by
inserting

    $feature{'snapshot'}{'default'} = ['x-zip', 'zip', ''];

in gitweb_config.perl.

Tar files remain the default option.

Signed-off-by: Mark Levedahl <redacted>
Acked-by: Petr Baudis <redacted>
Signed-off-by: Junio C Hamano <redacted>
18 years agoMerge branch 'fl/cvsserver'
Junio C Hamano [Wed, 23 May 2007 21:54:18 +0000 (14:54 -0700)]
Merge branch 'fl/cvsserver'

* fl/cvsserver:
  t9400: Add some basic pserver tests
  t9400: Add some more cvs update tests
  t9400: Add test cases for config file handling

18 years agoFix multi-branch import with --silent.
Simon Hausmann [Wed, 23 May 2007 21:53:14 +0000 (23:53 +0200)]
Fix multi-branch import with --silent.

Signed-off-by: Simon Hausmann <redacted>
18 years agoFix p4 execution in git-p4 rollback.
Simon Hausmann [Wed, 23 May 2007 21:44:19 +0000 (23:44 +0200)]
Fix p4 execution in git-p4 rollback.

Signed-off-by: Simon Hausmann <redacted>
18 years agoCatch p4 errors in rollback early enough (before deleting refs!)
Simon Hausmann [Wed, 23 May 2007 21:40:48 +0000 (23:40 +0200)]
Catch p4 errors in rollback early enough (before deleting refs!)

Signed-off-by: Simon Hausmann <redacted>
18 years agoOops, fill the /list/ correct with the p4 exit code.
Simon Hausmann [Wed, 23 May 2007 21:32:32 +0000 (23:32 +0200)]
Oops, fill the /list/ correct with the p4 exit code.

Signed-off-by: Simon Hausmann <redacted>
18 years agoDon't make len(p4Cmd("p4 changes -m 1 //foo/...")) == 0 succeed when the p4 command...
Simon Hausmann [Wed, 23 May 2007 21:27:31 +0000 (23:27 +0200)]
Don't make len(p4Cmd("p4 changes -m 1 //foo/...")) == 0 succeed when the p4 command itself failed.

When the p4 command failed write out the exit code in the returned dict.

Signed-off-by: Simon Hausmann <redacted>
18 years agoMerge branch 'ar/progress'
Junio C Hamano [Wed, 23 May 2007 18:39:58 +0000 (11:39 -0700)]
Merge branch 'ar/progress'

* ar/progress:
  Fix the progress code to output LF only when it is really needed

18 years agoMerge branch 'maint'
Junio C Hamano [Wed, 23 May 2007 18:39:53 +0000 (11:39 -0700)]
Merge branch 'maint'

* maint:
  Use git-for-each-ref to check whether the origin branch exists.

18 years agoFix the progress code to output LF only when it is really needed
Alex Riesen [Wed, 23 May 2007 16:07:25 +0000 (18:07 +0200)]
Fix the progress code to output LF only when it is really needed

Signed-off-by: Alex Riesen <redacted>
Signed-off-by: Junio C Hamano <redacted>
18 years agopack-objects: clarification & option checks for --max-pack-size
Dana How [Wed, 23 May 2007 17:11:33 +0000 (10:11 -0700)]
pack-objects: clarification & option checks for --max-pack-size

Explain the special code for detecting a corner-case error,
and complain about --stdout & --max-pack-size being used together.

Signed-off-by: Dana L. How <redacted>
Signed-off-by: Junio C Hamano <redacted>
18 years agoMake rollback work with locally imported branches
Simon Hausmann [Wed, 23 May 2007 18:07:57 +0000 (20:07 +0200)]
Make rollback work with locally imported branches

Signed-off-by: Simon Hausmann <redacted>
18 years agoUse git-for-each-ref to check whether the origin branch exists.
Stephan Springl [Wed, 23 May 2007 11:13:21 +0000 (12:13 +0100)]
Use git-for-each-ref to check whether the origin branch exists.

This works in repositories that have their refs packed by
"git-pack-refs --all --prune" whereas testing the file
$git_dir/refs/heads/$opt_o does not.

Acked-by: Johannes Schindelin <redacted>
Signed-off-by: Junio C Hamano <redacted>
18 years agoAvoid calling git symbolic-ref refs/heads/p4//HEAD (double slash)
Simon Hausmann [Wed, 23 May 2007 14:41:46 +0000 (16:41 +0200)]
Avoid calling git symbolic-ref refs/heads/p4//HEAD (double slash)

Signed-off-by: Simon Hausmann <redacted>
18 years agoFix command line parameter parser of revert/cherry-pick
Junio C Hamano [Wed, 23 May 2007 05:52:59 +0000 (22:52 -0700)]
Fix command line parameter parser of revert/cherry-pick

The parser was inconsistently done, in that it did not look at
the last command line parameter to see if it could be an unknown
option, although it was designed to notice unknown options if
they were given in positions the command expects to find them
(i.e. everything except the last parameter, which ought to be
<commit-ish>).  This prevented a very natural invocation

$ git cherry-pick --usage

from issuing the usage help.

Signed-off-by: Junio C Hamano <redacted>
18 years agoMerge branch 'jn/lstree'
Junio C Hamano [Wed, 23 May 2007 07:17:47 +0000 (00:17 -0700)]
Merge branch 'jn/lstree'

* jn/lstree:
  Add an option to git-ls-tree to display also the size of blob

18 years agoMerge branch 'maint'
Junio C Hamano [Wed, 23 May 2007 07:16:11 +0000 (00:16 -0700)]
Merge branch 'maint'

* maint:
  Document branch.autosetupmerge.

18 years agoMerge branch 'maint-1.5.1' into maint
Junio C Hamano [Wed, 23 May 2007 07:15:35 +0000 (00:15 -0700)]
Merge branch 'maint-1.5.1' into maint

* maint-1.5.1:
  Document branch.autosetupmerge.

18 years agobuiltin-pack-objects: remove unnecessary code for no-delta
Junio C Hamano [Wed, 23 May 2007 06:04:49 +0000 (23:04 -0700)]
builtin-pack-objects: remove unnecessary code for no-delta

As we do not consider objects marked as "no-delta" early, there
is no point to check if the other objects already in the delta
window are marked as such -- "no-delta" objects will not enter
the window to begin with.

Pointed out by Nico.

Signed-off-by: Junio C Hamano <redacted>
18 years agoDocument branch.autosetupmerge.
Paolo Bonzini [Wed, 23 May 2007 05:07:54 +0000 (07:07 +0200)]
Document branch.autosetupmerge.

This patch documents the branch.autosetupmerge config option, added
by commit 0746d19a.

Signed-off-by: Paolo Bonzini <redacted>
Signed-off-by: Junio C Hamano <redacted>
18 years agoDoc updates
Simon Hausmann [Tue, 22 May 2007 22:33:34 +0000 (00:33 +0200)]
Doc updates

Signed-off-by: Simon Hausmann <redacted>
18 years agoUse refs/heads/* instead of refs/heads/p4/* for local imports
Simon Hausmann [Tue, 22 May 2007 22:15:50 +0000 (00:15 +0200)]
Use refs/heads/* instead of refs/heads/p4/* for local imports

Signed-off-by: Simon Hausmann <redacted>
18 years agoAdded support for --max-changes=<count> to ease import debugging
Simon Hausmann [Tue, 22 May 2007 22:07:35 +0000 (00:07 +0200)]
Added support for --max-changes=<count> to ease import debugging

Signed-off-by: Simon Hausmann <redacted>
18 years agoAdded support for importing multiple branches into refs/heads instead of just refs...
Simon Hausmann [Tue, 22 May 2007 22:03:08 +0000 (00:03 +0200)]
Added support for importing multiple branches into refs/heads instead of just refs/remotes
using --import-local. Needs some further microfix but seems to work otherwise.

Signed-off-by: Simon Hausmann <redacted>
18 years agogit-gui: Tighten internal pattern match for lib/ directory
Shawn O. Pearce [Tue, 22 May 2007 07:22:51 +0000 (03:22 -0400)]
git-gui: Tighten internal pattern match for lib/ directory

Our GITGUI_LIBDIR macro was testing only for @@ at the start of
the path, assuming nobody would ever find that to be a reasonable
prefix for a directory to install our library into.  That is most
likely a valid assumption, but its even more unlikely they would
have the start be @@GITGUI_ and the end be @@.  Note that we
cannot use the full string here because that would get expanded
by the sed replacement in our Makefile.

Signed-off-by: Shawn O. Pearce <redacted>
18 years agot9400: Add some basic pserver tests
Frank Lichtenheld [Sun, 20 May 2007 22:31:58 +0000 (00:31 +0200)]
t9400: Add some basic pserver tests

While we can easily test the cvs <-> git-cvsserver
communication with :fork: and git-cvsserver server
there are some pserver specifics we should test, too.

Currently this are two tests of the pserver authentication.

Signed-off-by: Frank Lichtenheld <redacted>
Signed-off-by: Junio C Hamano <redacted>
18 years agot9400: Add some more cvs update tests
Frank Lichtenheld [Sun, 20 May 2007 22:31:57 +0000 (00:31 +0200)]
t9400: Add some more cvs update tests

Add some cvs update tests that include various merge
situations. Also add a basic test for update -C
since it fits so well in there.

Signed-off-by: Frank Lichtenheld <redacted>
Signed-off-by: Junio C Hamano <redacted>
18 years agot9400: Add test cases for config file handling
Frank Lichtenheld [Sun, 20 May 2007 22:31:56 +0000 (00:31 +0200)]
t9400: Add test cases for config file handling

Add a few test cases for the config file parsing
done by git-cvsserver.

Signed-off-by: Frank Lichtenheld <redacted>
Signed-off-by: Junio C Hamano <redacted>
18 years agoTeach "delta" attribute to pack-objects.
Junio C Hamano [Sat, 19 May 2007 07:39:31 +0000 (00:39 -0700)]
Teach "delta" attribute to pack-objects.

This teaches pack-objects to use .gitattributes mechanism so
that the user can specify certain blobs are not worth spending
CPU cycles to attempt deltification.

The name of the attrbute is "delta", and when it is set to
false, like this:

== .gitattributes ==
*.jpg -delta

they are always stored in the plain-compressed base object
representation.

Signed-off-by: Junio C Hamano <redacted>
18 years agopack-objects: pass fullname down to add_object_entry()
Junio C Hamano [Sat, 19 May 2007 07:19:23 +0000 (00:19 -0700)]
pack-objects: pass fullname down to add_object_entry()

Instead of giving a hash for grouping, pass fullname to add_object_entry().
I want to add "do not try deltifying this object" bit to object_entry based on
the settings in .gitattributes, and hashing the name down too early would
interfere with that plan.

Signed-off-by: Junio C Hamano <redacted>
18 years agoMerge branch 'mc/ws'
Junio C Hamano [Tue, 22 May 2007 06:57:05 +0000 (23:57 -0700)]
Merge branch 'mc/ws'

* mc/ws:
  git-apply: Fix removal of new trailing blank lines.
  Teach 'git-apply --whitespace=strip' to remove empty lines at the end of file

18 years agoTeach git-describe how to run name-rev
Shawn O. Pearce [Mon, 21 May 2007 07:20:25 +0000 (03:20 -0400)]
Teach git-describe how to run name-rev

Often users want to know not which tagged version a commit came
after, but which tagged version a commit is contained within.
This latter task is the job of git-name-rev, but most users are
looking to git-describe to do the job.

Junio suggested we make `git describe --contains` run the correct
tool, `git name-rev`, and that's exactly what we do here.  The output
of name-rev was adjusted slightly through the new --name-only option,
allowing describe to execv into name-rev and maintain its current
output format.

Signed-off-by: Shawn O. Pearce <redacted>
Signed-off-by: Junio C Hamano <redacted>
18 years agorename dirlink to gitlink.
Martin Waitz [Mon, 21 May 2007 20:08:28 +0000 (22:08 +0200)]
rename dirlink to gitlink.

Unify naming of plumbing dirlink/gitlink concept:

git ls-files -z '*.[ch]' |
xargs -0 perl -pi -e 's/dirlink/gitlink/g;' -e 's/DIRLNK/GITLINK/g;'

Signed-off-by: Junio C Hamano <redacted>
18 years agoMerge branch 'maint'
Junio C Hamano [Tue, 22 May 2007 03:03:53 +0000 (20:03 -0700)]
Merge branch 'maint'

* maint:
  git-cvsserver: fix disabling service via per-method config
  git-status: respect core.excludesFile
  SubmittingPatches: mention older C compiler compatibility
  git-daemon: don't ignore pid-file write failure

18 years agogit-cvsserver: fix disabling service via per-method config
Junio C Hamano [Mon, 21 May 2007 00:57:27 +0000 (17:57 -0700)]
git-cvsserver: fix disabling service via per-method config

When the per-method enable logic disables the access, we should
not even look at the global one.

 git-cvsserver.perl |    8 +++-----
 1 files changed, 3 insertions(+), 5 deletions(-)

Signed-off-by: Junio C Hamano <redacted>
18 years agoMerge branch 'maint-1.5.1' into maint
Junio C Hamano [Tue, 22 May 2007 01:42:35 +0000 (18:42 -0700)]
Merge branch 'maint-1.5.1' into maint

* maint-1.5.1:
  git-status: respect core.excludesFile
  SubmittingPatches: mention older C compiler compatibility
  git-daemon: don't ignore pid-file write failure

18 years agogit-status: respect core.excludesFile
Johannes Schindelin [Tue, 22 May 2007 00:12:17 +0000 (01:12 +0100)]
git-status: respect core.excludesFile

git-add reads this variable, and honours the contents of that file if that
exists. Match this behaviour in git-status, too.

Noticed by Evan Carroll on IRC.

Signed-off-by: Johannes Schindelin <redacted>
Signed-off-by: Junio C Hamano <redacted>
18 years agoSubmittingPatches: mention older C compiler compatibility
Johannes Schindelin [Mon, 21 May 2007 12:48:49 +0000 (13:48 +0100)]
SubmittingPatches: mention older C compiler compatibility

We do not appreciate C99 initializers, declarations after statements,
or "0" instead of "NULL".

Signed-off-by: Johannes Schindelin <redacted>
Signed-off-by: Junio C Hamano <redacted>
18 years agogit-daemon: don't ignore pid-file write failure
Jim Meyering [Mon, 21 May 2007 07:58:01 +0000 (09:58 +0200)]
git-daemon: don't ignore pid-file write failure

Note: since the consequence of failure is to call die,
I don't bother to close "f".

Signed-off-by: Jim Meyering <redacted>
Signed-off-by: Junio C Hamano <redacted>
18 years ago[PATCH] gitk: Allow specifying tabstop as other than default 8 characters.
Mark Levedahl [Sun, 20 May 2007 15:45:50 +0000 (11:45 -0400)]
[PATCH] gitk: Allow specifying tabstop as other than default 8 characters.

Not all projects use the convention that one tabstop = 8 characters, and
a common convention is to use one tabstop = one level of indent.  For such
projects, using 8 characters per tabstop often shows too much whitespace
per indent.  This allows the user to configure the number of characters
to use per tabstop.

Signed-off-by: Mark Levedahl <redacted>
Signed-off-by: Paul Mackerras <redacted>
18 years ago[PATCH] gitk: Update fontsize in patch / tree list
Mark Levedahl [Sun, 20 May 2007 15:45:49 +0000 (11:45 -0400)]
[PATCH] gitk: Update fontsize in patch / tree list

When adjusting fontsize (using ctrl+/-), all panes except the lower right
were updated. This fixes that.

Signed-off-by: Mark Levedahl <redacted>
Signed-off-by: Paul Mackerras <redacted>
18 years ago[PATCH] gitk: Make selection highlight color configurable
Mark Levedahl [Sun, 20 May 2007 16:12:48 +0000 (12:12 -0400)]
[PATCH] gitk: Make selection highlight color configurable

Cygwin's tk by default uses a very dark selection background color that
makes the currently selected text almost unreadable.  On linux, the default
selection background is a light gray which is very usable. This makes the
default a light gray everywhere but allows the user to configure the
color as well.

Signed-off-by: Mark Levedahl <redacted>
Signed-off-by: Paul Mackerras <redacted>
18 years agogitk: Use the -q flag to git checkout
Paul Mackerras [Mon, 21 May 2007 23:52:00 +0000 (09:52 +1000)]
gitk: Use the -q flag to git checkout

This avoids having gitk think that an error has occurred in the checkout.

Signed-off-by: Paul Mackerras <redacted>
18 years agoFixes for rollback, delete branches that did not exist at the specified p4 change
Simon Hausmann [Mon, 21 May 2007 21:44:24 +0000 (23:44 +0200)]
Fixes for rollback, delete branches that did not exist at the specified p4 change

Signed-off-by: Simon Hausmann <redacted>
18 years agoFix branch detection in multi-branch imports
Simon Hausmann [Mon, 21 May 2007 21:25:51 +0000 (23:25 +0200)]
Fix branch detection in multi-branch imports

Signed-off-by: Simon Hausmann <redacted>
18 years agoAdded a rollback command for debugging. It sets back the heads of the p4 branches...
Simon Hausmann [Mon, 21 May 2007 20:57:06 +0000 (22:57 +0200)]
Added a rollback command for debugging. It sets back the heads of the p4 branches to the specified p4 change number or earlier.

Signed-off-by: Simon Hausmann <redacted>
18 years agoMake git-p4 submit --direct safer by also creating a git commit
Simon Hausmann [Mon, 21 May 2007 09:04:26 +0000 (11:04 +0200)]
Make git-p4 submit --direct safer by also creating a git commit

Signed-off-by: Simon Hausmann <redacted>
git clone https://git.99rst.org/PROJECT