Commit Graph

12872 Commits

Author SHA1 Message Date
Sam Vilain
9c5665aa3c Allow HTTP proxy to be overridden in config
The http_proxy / HTTPS_PROXY variables used by curl to control
proxying may not be suitable for git.  Allow the user to override them
in the configuration file.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-12-03 22:11:53 -08:00
Christian Couder
b319ce4c14 Trace and quote with argv: get rid of unneeded count argument.
Now that str_buf takes care of all the allocations, there is
no more gain to pass an argument count.

So this patch removes the "count" argument from:
	- "sq_quote_argv"
	- "trace_argv_printf"
and all the callers.

Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-12-03 22:11:53 -08:00
Robert Schiele
41650765de install-sh from automake does not like -m without delimiting space
The install-sh script as shipped with automake requires a space between
the -m switch and its argument.  Since this is also the regular way of
doing it with other install implementations this change inserts the
missing space in all makefiles.

Signed-off-by: Robert Schiele <rschiele@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-12-03 22:11:53 -08:00
Christian Couder
0f6f195b77 Documentation: add a new man page for "git-help"
Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-12-03 22:11:38 -08:00
Junio C Hamano
17ef10d055 git-commit documentation: fix unfinished sentence.
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-12-03 13:35:26 -08:00
Wincent Colaiuta
7e018be2ad git-add -i: add help text for list-and-choose UI
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-12-03 01:04:28 -08:00
Junio C Hamano
5241b6bfe2 git-commit --allow-empty
It does not usually make sense to record a commit that has the exact
same tree as its sole parent commit and that is why git-commit prevents
you from making such a mistake, but when data from foreign scm is
involved, it is a different story.  We are equipped to represent such an
(perhaps insane, perhaps by mistake, or perhaps done on purpose) empty
change, and it is better to represent it bypassing the safety valve for
native use.

This is primarily for use by foreign scm interface scripts.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-12-03 00:45:21 -08:00
Junio C Hamano
36863af16e git-commit --allow-empty
It does not usually make sense to record a commit that has the exact
same tree as its sole parent commit and that is why git-commit prevents
you from making such a mistake, but when data from foreign scm is
involved, it is a different story.  We are equipped to represent such an
(perhaps insane, perhaps by mistake, or perhaps done on purpose) empty
change, and it is better to represent it bypassing the safety valve for
native use.

This is primarily for use by foreign scm interface scripts.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-12-03 00:36:49 -08:00
Johannes Sixt
13aba1e514 git-commit: Allow to amend a merge commit that does not change the tree
Normally, it should not be allowed to generate an empty commit. A merge
commit generated with git 'merge -s ours' does not change the tree (along
the first parent), but merges are not "empty" even if they do not change
the tree. Hence, commit 8588452ceb allowed to amend a merge commit that
does not change the tree, but 4fb5fd5d30 disallowed it again in an
attempt to avoid that an existing commit is amended such that it becomes
empty. With this change, a commit can be edited (create a new one or amend
an existing one) either if there are changes or if there are at least two
parents.

Signed-off-by: Johannes Sixt <johannes.sixt@telecom.at>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-12-03 00:25:26 -08:00
Junio C Hamano
9663c3bc6a git-commit: Allow to amend a merge commit that does not change the tree
Normally, it should not be allowed to generate an empty commit. A merge
commit generated with git 'merge -s ours' does not change the tree (along
the first parent), but merges are not "empty" even if they do not change
the tree. Hence, we should be careful not to forbid this case.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-12-02 23:55:23 -08:00
Jeff King
69e7491835 quote_path: fix collapsing of relative paths
The code tries to collapse identical leading components
between the prefix and the path. So if we're in "dir1", the
path "dir1/file" should become just "file". However, we were
ending up with "../dir1/file". The included test expected
the wrong output.

The "len" parameter to quote_path can be negative to mean
"this is a NUL terminated string".  Simply count it so that
the loop can rely on it being the length of the path.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-12-02 23:35:46 -08:00
Shawn Bohrer
2f02b25f36 Make git status usage say git status instead of git commit
git status shares the same usage information as git commit since it
shows what would be committed if the same options are given.  However,
when displaying the usage information for git status it should say it
is for git status not git commit.

Signed-off-by: Shawn Bohrer <shawn.bohrer@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-12-02 23:35:46 -08:00
Junio C Hamano
d9ccfe7711 Fix --signoff in builtin-commit differently.
Introduce fmt_name() specifically meant for formatting the name and
email pair, to add signed-off-by value.  This reverts parts of
13208572fb (builtin-commit: fix --signoff)
so that an empty datestamp string given to fmt_ident() by mistake will
error out as before.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-12-02 23:35:46 -08:00
Junio C Hamano
afcc4f7767 Merge branch 'js/prune-expire'
* js/prune-expire:
  Add "--expire <time>" option to 'git prune'
2007-12-02 23:03:38 -08:00
Junio C Hamano
c579f537fc Merge branch 'js/export-with-assignment'
* js/export-with-assignment:
  Replace instances of export VAR=VAL with VAR=VAL; export VAR
2007-12-02 23:01:25 -08:00
Junio C Hamano
de4c6011d2 Merge branch 'js/fast-export'
* js/fast-export:
  Add 'git fast-export', the sister of 'git fast-import'
2007-12-02 23:01:15 -08:00
Junio C Hamano
ac4d528ec1 Merge branch 'js/rebase-i-rerere'
* js/rebase-i-rerere:
  rebase -i: give rerere a chance
2007-12-02 23:01:02 -08:00
Junio C Hamano
0ebd5d7186 Merge branch 'js/pull-rebase'
* js/pull-rebase:
  Teach 'git pull' about --rebase
2007-12-02 23:00:43 -08:00
Junio C Hamano
5b0d61637c Merge branch 'wc/rebase-insn'
* wc/rebase-insn:
  Mention that git-rm can be an appropriate resolution as well as git-add.
  revert/cherry-pick: Allow overriding the help text by the calling Porcelain
2007-12-02 23:00:28 -08:00
Junio C Hamano
a1d3b0cae1 Merge branch 'jc/typebreak'
* jc/typebreak:
  Enable rewrite as well as rename detection in git-status
  rename: Break filepairs with different types.
2007-12-02 22:59:28 -08:00
Jeff King
f714fb846b Enable rewrite as well as rename detection in git-status
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-12-02 22:58:37 -08:00
Junio C Hamano
cd390763d4 Merge branch 'jc/color'
* jc/color:
  git-config --get-color: get configured color
  "color.diff = true" is not "always" anymore.
2007-12-02 22:49:58 -08:00
Johannes Sixt
cbd9ac9a71 git-gui: Improve the application icon on Windows.
Previusly, there was only a 16x16 image, which looked very distorted.
Here we add a 32x32 version, and also make the image sharper.

Signed-off-by: Johannes Sixt <johannes.sixt@telecom.at>
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2007-12-02 23:05:10 -05:00
Robert Schiele
74521eee4c git-gui: install-sh from automake does not like -m755
The install-sh script as shipped with automake requires a space between
the -m switch and its argument.  Since this is also the regular way of
doing it with other install implementations this change inserts the
missing space.

Signed-off-by: Robert Schiele <rschiele@gmail.com>
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2007-12-02 23:04:02 -05:00
brian m. carlson
5405110200 git-gui: Reorder msgfmt command-line arguments
Any program using getopt or getopt_long will stop processing options
once a non-option argument has been encountered, if POSIXLY_CORRECT is
set.  Therefore, reorder the command-line arguments to put options
first, so that the msgfmt call works in this scenario.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.ath.cx>
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2007-12-02 22:49:36 -05:00
Johannes Schindelin
f2dc849e9c Add 'git fast-export', the sister of 'git fast-import'
This program dumps (parts of) a git repository in the format that
fast-import understands.

For clarity's sake, it does not use the 'inline' method of specifying
blobs in the commits, but builds the blobs before building the commits.

Since signed tags' signatures will not necessarily be valid (think
transformations after the export, or excluding revisions, changing
the history), there are 4 modes to handle them: abort (default),
ignore, warn and strip.  The latter just turns the tags into
unsigned ones.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-12-02 19:22:12 -08:00
Junio C Hamano
ee0d794640 Merge branch 'dc/gitweb'
* dc/gitweb:
  gitweb: the commitdiff is very commonly used, it's needed on search page, too
2007-12-02 19:07:48 -08:00
Jakub Narebski
61fd2552d8 gitweb: Update and improve gitweb/README file
Update list of build configuration variables, add references
to gitweb/INSTALL, add description of runtime and per-repository
runtime configuration.

Signed-off-by: Jakub Narebski <jnareb@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-12-02 19:07:17 -08:00
Kevin Leung
683befa178 git-stash: Display help message if git-stash is run with wrong sub-commands
The current git-stash behaviour is very error prone to typos. For example,
if you typed "git-stash llist", git-stash would think that you wanted to
save to a stash named "llist", but in fact, you meant "git-stash list".

Signed-off-by: Kevin Leung <kevinlsk@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-12-02 18:51:09 -08:00
Junio C Hamano
6e9e0327b7 git-am: catch missing author date early.
Even though commit-tree would default to the current time if the incoming
e-mail message somehow did not record the timestamp, it is safer to catch
the breakage sooner.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-12-02 14:38:40 -08:00
Wincent Colaiuta
633209898b add -i: allow prefix highlighting for "Add untracked" as well.
These changes make the automatic prefix highlighting work with the "Add
untracked" subcommand in git-add--interactive by explicitly handling
arrays, hashes and strings internally (previously only arrays and hashes
were handled).

In addition, prefixes which have special meaning for list_and_choose
(things like "*" for "all" and "-" for "deselect) are explicitly
excluded (highlighting these prefixes would be misleading).

Signed-off-by: Wincent Colaiuta <win@wincent.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-12-02 11:09:22 -08:00
Junio C Hamano
ada59fcd32 Merge branch 'maint'
* maint:
  t9600: test cvsimport from CVS working tree
2007-12-02 11:00:45 -08:00
Jeff King
4e596e988a t9600: test cvsimport from CVS working tree
This test passes with v1.5.3.7, but not with v1.5.3.6.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-12-02 10:59:59 -08:00
Denis Cheng
f1fe8f5c1e gitweb: the commitdiff is very commonly used, it's needed on search page, too
Acked-by: Jakub Narebski <jnareb@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-12-02 02:32:36 -08:00
Junio C Hamano
b45563a229 rename: Break filepairs with different types.
When we consider if a path has been totally rewritten, we did not
touch changes from symlinks to files or vice versa.  But a change
that modifies even the type of a blob surely should count as a
complete rewrite.

While we are at it, modernise diffcore-break to be aware of gitlinks (we
do not want to touch them).

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-12-02 02:24:46 -08:00
Jeff King
b5b644a93a git-commit: clean up die messages
These are three types of cleanups here:

  1. remove newline from die message (die/report adds it
     already)
  2. typo: s/merger/merge/
  3. the old "* no commit message?  aborting commit." is now
     prepended with "fatal: ", making the asterisk look a
     little funny. Let's just remove it.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-12-01 23:50:45 -08:00
Junio C Hamano
1c46ab1fad Update draft release notes for 1.5.4
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-12-01 23:49:44 -08:00
Junio C Hamano
79d30668ab Consolidate command list to one.
The categorized list of commands in git(7) and the list of common
commands in "git help" output were maintained separately, which was
insane.  This consolidates them to a single command-list.txt file.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-12-01 23:48:28 -08:00
Junio C Hamano
ca8c8c5686 Resurrect peek-remote
8951d7c1f1 (Build in ls-remote) made
peek-remote as a synonym to ls-remote by enhancing the latter, but
at the same time actually _removed_ it, before we officially gave
removal notice.  This was bad.

Resurrect it for v1.5.4.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-12-01 23:38:35 -08:00
Junio C Hamano
8256c6e010 Merge branch 'tt/help'
* tt/help:
  Remove hint to use "git help -a"
  Make the list of common commands more exclusive
2007-12-01 20:05:49 -08:00
Junio C Hamano
d6e09883f2 Merge branch 'jc/move-gitk'
* jc/move-gitk:
  Move gitk to its own subdirectory
2007-12-01 13:58:57 -08:00
Junio C Hamano
5fa00a4dcf Merge branch 'jc/branch-contains'
* jc/branch-contains:
  git-branch --contains: doc and test
  git-branch --contains=commit
  parse-options: Allow to hide options from the default usage.
2007-12-01 13:58:54 -08:00
Junio C Hamano
c4d48ab5af Merge branch 'cr/tag-options'
* cr/tag-options:
  git-tag: test that -s implies an annotated tag
  "git-tag -s" should create a signed annotated tag
  builtin-tag: accept and process multiple -m just like git-commit
  Make builtin-tag.c use parse_options.
2007-12-01 13:58:46 -08:00
Junio C Hamano
2221a67571 Update draft release notes for 1.5.4
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-12-01 13:44:25 -08:00
Junio C Hamano
b52e985a4f Merge 1.5.3.7 in
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-12-01 12:49:51 -08:00
Junio C Hamano
1d557352f1 GIT 1.5.3.7
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-12-01 11:20:00 -08:00
Junio C Hamano
74e3f97be8 Fix typo in t4008 test title
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2007-12-01 11:06:41 -08:00
Steven Grimm
cec0d5a3bb git-svn: Don't create a "master" branch every time rebase is run
If you run "git-svn rebase" while sitting on a topic branch, there is
no need to create a "master" branch if one didn't exist already. The
branch was created implicitly by the automatic checkout after fetching,
which in the case of rebase isn't actually necessary anyway.

Signed-off-by: Steven Grimm <koreth@midwinter.com>
Acked-by: Eric Wong <normalperson@yhbt.net>
2007-11-30 23:32:51 -08:00
Vineet Kumar
2d87979215 git-svn: add a show-externals command.
show-externals can be used by scripts to provide svn:externals-like
functionality.  For example, a script can list all of the externals and then
use check out the listed URLs at the appropriate paths, similar to what the svn
client does.  Said script (or perhaps git-svn itself, in the future) could
simply invoke svn export on the paths, or it could go one further, using
git-svn clone and even git-submodule together to better integrate externals
checkouts.

The implementation is shamelessly copied from show-ignores.  A more general
command to list user-specified properties is probably a better idea.

Signed-off-by: Vineet Kumar <vineet@doorstop.net>
Acked-by: Eric Wong <normalperson@yhbt.net>
2007-11-30 23:32:51 -08:00
David D. Kilzer
8d7c4fad3f git-svn: Remove unnecessary Git::SVN::Util package
Digest::MD5 is loaded regardless of the package in which it's
declared, so move its 'use' statement and the md5sum() function
into the main package.

Signed-off-by: David D. Kilzer <ddkilzer@kilzer.net>
Acked-by: Eric Wong <normalperson@yhbt.net>
2007-11-30 23:32:51 -08:00