summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLibravatar Junio C Hamano <junkio@cox.net>2007-02-26 01:20:42 -0800
committerLibravatar Junio C Hamano <junkio@cox.net>2007-02-26 01:20:42 -0800
commit048f48a2fdefdf71e7af19ec7111000ce2ebf52e (patch)
treeee91b56c9071972b1585fa65838da5748c0abfd9
parentFix typo: do not show name1 when name2 fails (diff)
parentDocumentation: link in 1.5.0.2 material to the top documentation page. (diff)
downloadtgif-048f48a2fdefdf71e7af19ec7111000ce2ebf52e.tar.xz
Merge branch 'master' into js/diff-ni
* master: (201 commits) Documentation: link in 1.5.0.2 material to the top documentation page. Documentation: document remote.<name>.tagopt GIT 1.5.0.2 git-remote: support remotes with a dot in the name Documentation: describe "-f/-t/-m" options to "git-remote add" diff --cc: fix display of symlink conflicts during a merge. merge-recursive: fix longstanding bug in merging symlinks merge-index: fix longstanding bug in merging symlinks diff --cached: give more sensible error message when HEAD is yet to be created. Update tests to use test-chmtime Add test-chmtime: a utility to change mtime on files Add Release Notes to prepare for 1.5.0.2 Allow arbitrary number of arguments to git-pack-objects rerere: do not deal with symlinks. rerere: do not skip two conflicted paths next to each other. Don't modify CREDITS-FILE if it hasn't changed. diff-patch: Avoid emitting double-slashes in textual patch. Reword git-am 3-way fallback failure message. Limit filename for format-patch core.legacyheaders: Use the description used in RelNotes-1.5.0 ...
-rw-r--r--.gitignore1
-rw-r--r--.mailmap1
-rw-r--r--Documentation/RelNotes-1.5.0.2.txt65
-rw-r--r--Documentation/RelNotes-1.5.0.txt2
-rw-r--r--Documentation/config.txt42
-rw-r--r--Documentation/git-clone.txt4
-rw-r--r--Documentation/git-cvsexportcommit.txt7
-rw-r--r--Documentation/git-remote.txt26
-rw-r--r--Documentation/git-svn.txt410
-rw-r--r--Documentation/git.txt6
-rw-r--r--Makefile29
-rw-r--r--builtin-apply.c174
-rw-r--r--builtin-archive.c10
-rw-r--r--builtin-blame.c6
-rw-r--r--builtin-branch.c12
-rw-r--r--builtin-checkout-index.c4
-rw-r--r--builtin-config.c15
-rw-r--r--builtin-describe.c6
-rw-r--r--builtin-diff.c5
-rw-r--r--builtin-fmt-merge-msg.c10
-rw-r--r--builtin-for-each-ref.c6
-rw-r--r--builtin-fsck.c2
-rw-r--r--builtin-grep.c6
-rw-r--r--builtin-init-db.c4
-rw-r--r--builtin-log.c40
-rw-r--r--builtin-ls-files.c8
-rw-r--r--builtin-ls-tree.c2
-rw-r--r--builtin-mailinfo.c2
-rw-r--r--builtin-name-rev.c31
-rw-r--r--builtin-pack-objects.c18
-rw-r--r--builtin-pack-refs.c2
-rw-r--r--builtin-push.c18
-rw-r--r--builtin-read-tree.c4
-rw-r--r--builtin-reflog.c4
-rw-r--r--builtin-rerere.c22
-rw-r--r--builtin-rev-parse.c12
-rw-r--r--builtin-shortlog.c6
-rw-r--r--builtin-show-branch.c24
-rw-r--r--builtin-show-ref.c18
-rw-r--r--builtin-tar-tree.c2
-rw-r--r--builtin-unpack-objects.c2
-rw-r--r--builtin-write-tree.c2
-rw-r--r--cache.h5
-rw-r--r--combine-diff.c25
-rw-r--r--compat/strtoumax.c10
-rw-r--r--config.c11
-rw-r--r--configure.ac31
-rw-r--r--connect.c6
-rwxr-xr-xcontrib/fast-import/import-tars.perl9
-rw-r--r--convert.c186
-rw-r--r--daemon.c32
-rw-r--r--diff-lib.c16
-rw-r--r--diff.c151
-rw-r--r--entry.c16
-rw-r--r--environment.c1
-rw-r--r--exec_cmd.c2
-rw-r--r--fast-import.c74
-rw-r--r--fetch-pack.c12
-rwxr-xr-xgit-am.sh2
-rwxr-xr-xgit-commit.sh4
-rw-r--r--git-compat-util.h12
-rwxr-xr-xgit-cvsexportcommit.perl27
-rwxr-xr-xgit-cvsserver.perl15
-rwxr-xr-xgit-fetch.sh9
-rw-r--r--git-gui/.gitignore1
-rwxr-xr-xgit-gui/CREDITS-GEN71
-rwxr-xr-xgit-gui/GIT-VERSION-GEN17
-rw-r--r--git-gui/Makefile23
-rw-r--r--git-gui/TODO44
-rwxr-xr-xgit-gui/git-gui.sh285
-rwxr-xr-xgit-remote.perl37
-rwxr-xr-xgit-svn.perl5058
-rw-r--r--git.c12
-rw-r--r--help.c4
-rw-r--r--http-fetch.c4
-rw-r--r--http-push.c10
-rw-r--r--imap-send.c8
-rw-r--r--index-pack.c4
-rw-r--r--merge-index.c2
-rw-r--r--merge-recursive.c2
-rw-r--r--peek-remote.c4
-rw-r--r--perl/Git.pm30
-rw-r--r--receive-pack.c4
-rw-r--r--refs.c8
-rw-r--r--revision.c57
-rw-r--r--send-pack.c4
-rw-r--r--setup.c2
-rw-r--r--sha1_file.c23
-rw-r--r--shell.c2
-rw-r--r--t/lib-git-svn.sh4
-rwxr-xr-xt/t0020-crlf.sh217
-rwxr-xr-xt/t4016-diff-quote.sh4
-rwxr-xr-xt/t4119-apply-config.sh162
-rwxr-xr-xt/t4200-rerere.sh53
-rwxr-xr-xt/t9100-git-svn-basic.sh54
-rwxr-xr-xt/t9101-git-svn-props.sh26
-rwxr-xr-xt/t9103-git-svn-graft-branches.sh61
-rwxr-xr-xt/t9104-git-svn-follow-parent.sh140
-rwxr-xr-xt/t9105-git-svn-commit-diff.sh9
-rwxr-xr-xt/t9107-git-svn-migrate.sh112
-rwxr-xr-xt/t9108-git-svn-glob.sh86
-rwxr-xr-xt/t9110-git-svn-use-svm-props.sh51
-rw-r--r--t/t9110/svm.dump511
-rwxr-xr-xt/t9111-git-svn-use-svnsync-props.sh51
-rw-r--r--t/t9111/svnsync.dump562
-rwxr-xr-xt/test-lib.sh10
-rw-r--r--test-chmtime.c61
-rw-r--r--upload-pack.c10
-rw-r--r--wt-status.c4
109 files changed, 6722 insertions, 2908 deletions
diff --git a/.gitignore b/.gitignore
index f15155d1b7..eb8a1f8606 100644
--- a/.gitignore
+++ b/.gitignore
@@ -139,6 +139,7 @@ git-whatchanged
git-write-tree
git-core-*/?*
gitweb/gitweb.cgi
+test-chmtime
test-date
test-delta
test-dump-cache-tree
diff --git a/.mailmap b/.mailmap
index c7a3a75f33..3a624eabc3 100644
--- a/.mailmap
+++ b/.mailmap
@@ -27,6 +27,7 @@ Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Ramsay Allan Jones <ramsay@ramsay1.demon.co.uk>
René Scharfe <rene.scharfe@lsrfire.ath.cx>
Robert Fitzsimons <robfitz@273k.net>
+Sam Vilain <sam@vilain.net>
Santi Béjar <sbejar@gmail.com>
Sean Estabrooks <seanlkml@sympatico.ca>
Shawn O. Pearce <spearce@spearce.org>
diff --git a/Documentation/RelNotes-1.5.0.2.txt b/Documentation/RelNotes-1.5.0.2.txt
new file mode 100644
index 0000000000..b061e50ff0
--- /dev/null
+++ b/Documentation/RelNotes-1.5.0.2.txt
@@ -0,0 +1,65 @@
+GIT v1.5.0.2 Release Notes
+==========================
+
+Fixes since v1.5.0.1
+--------------------
+
+* Bugfixes
+
+ - Automated merge conflict handling when changes to symbolic
+ links conflicted were completely broken. The merge-resolve
+ strategy created a regular file with conflict markers in it
+ in place of the symbolic link. The default strategy,
+ merge-recursive was even more broken. It removed the path
+ that was pointed at by the symbolic link. Both of these
+ problems have been fixed.
+
+ - 'git diff maint master next' did not correctly give combined
+ diff across three trees.
+
+ - 'git fast-import' portability fix for Solaris.
+
+ - 'git show-ref --verify' without arguments did not error out
+ but segfaulted.
+
+ - 'git diff :tracked-file `pwd`/an-untracked-file' gave an extra
+ slashes after a/ and b/.
+
+ - 'git format-patch' produced too long filenames if the commit
+ message had too long line at the beginning.
+
+ - Running 'make all' and then without changing anything
+ running 'make install' still rebuilt some files. This
+ was inconvenient when building as yourself and then
+ installing as root (especially problematic when the source
+ directory is on NFS and root is mapped to nobody).
+
+ - 'git-rerere' failed to deal with two unconflicted paths that
+ sorted next to each other.
+
+ - 'git-rerere' attempted to open(2) a symlink and failed if
+ there was a conflict. Since a conflicting change to a
+ symlink would not benefit from rerere anyway, the command
+ now ignores conflicting changes to symlinks.
+
+ - 'git-repack' did not like to pass more than 64 arguments
+ internally to underlying 'rev-list' logic, which made it
+ impossible to repack after accumulating many (small) packs
+ in the repository.
+
+ - 'git-diff' to review the combined diff during a conflicted
+ merge were not reading the working tree version correctly
+ when changes to a symbolic link conflicted. It should have
+ read the data using readlink(2) but read from the regular
+ file the symbolic link pointed at.
+
+ - 'git-remote' did not like period in a remote's name.
+
+* Documentation updates
+
+ - added and clarified core.bare, core.legacyheaders configurations.
+
+ - updated "git-clone --depth" documentation.
+
+
+* Assorted git-gui fixes.
diff --git a/Documentation/RelNotes-1.5.0.txt b/Documentation/RelNotes-1.5.0.txt
index 599efb8c90..daf4bdb0d7 100644
--- a/Documentation/RelNotes-1.5.0.txt
+++ b/Documentation/RelNotes-1.5.0.txt
@@ -448,7 +448,7 @@ Updates in v1.5.0 since v1.4.4 series
- There is a partial support for 'shallow' repositories that
keeps only recent history. A 'shallow clone' is created by
specifying how deep that truncated history should be
- (e.g. "git clone --depth=5 git://some.where/repo.git").
+ (e.g. "git clone --depth 5 git://some.where/repo.git").
Currently a shallow repository has number of limitations:
diff --git a/Documentation/config.txt b/Documentation/config.txt
index 38655350f2..d2b4a05ca5 100644
--- a/Documentation/config.txt
+++ b/Documentation/config.txt
@@ -5,7 +5,8 @@ The git configuration file contains a number of variables that affect
the git command's behavior. `.git/config` file for each repository
is used to store the information for that repository, and
`$HOME/.gitconfig` is used to store per user information to give
-fallback values for `.git/config` file.
+fallback values for `.git/config` file. The file `/etc/gitconfig`
+can be used to store system-wide defaults.
They can be used by both the git plumbing
and the porcelains. The variables are divided into sections, where
@@ -142,6 +143,18 @@ core.preferSymlinkRefs::
This is sometimes needed to work with old scripts that
expect HEAD to be a symbolic link.
+core.bare::
+ If true this repository is assumed to be 'bare' and has no
+ working directory associated with it. If this is the case a
+ number of commands that require a working directory will be
+ disabled, such as gitlink:git-add[1] or gitlink:git-merge[1].
++
+This setting is automatically guessed by gitlink:git-clone[1] or
+gitlink:git-init[1] when the repository was created. By default a
+repository that ends in "/.git" is assumed to be not bare (bare =
+false), while all other repositories are assumed to be bare (bare
+= true).
+
core.logAllRefUpdates::
Updates to a ref <ref> is logged to the file
"$GIT_DIR/logs/<ref>", by appending the new and old
@@ -180,10 +193,17 @@ core.compression::
slowest.
core.legacyheaders::
- A boolean which enables the legacy object header format in case
- you want to interoperate with old clients accessing the object
- database directly (where the "http://" and "rsync://" protocols
- count as direct access).
+ A boolean which
+ changes the format of loose objects so that they are more
+ efficient to pack and to send out of the repository over git
+ native protocol, since v1.4.2. However, loose objects
+ written in the new format cannot be read by git older than
+ that version; people fetching from your repository using
+ older versions of git over dumb transports (e.g. http)
+ will also be affected.
++
+To let git use the new loose object format, you have to
+set core.legacyheaders to false.
core.packedGitWindowSize::
Number of bytes of a pack file to map into memory in a
@@ -451,6 +471,10 @@ remote.<name>.push::
The default set of "refspec" for gitlink:git-push[1]. See
gitlink:git-push[1].
+remote.<name>.skipDefaultUpdate::
+ If true, this remote will be skipped by default when updating
+ using the remote subcommand of gitlink:git-remote[1].
+
remote.<name>.receivepack::
The default program to execute on the remote side when pushing. See
option \--exec of gitlink:git-push[1].
@@ -459,6 +483,14 @@ remote.<name>.uploadpack::
The default program to execute on the remote side when fetching. See
option \--exec of gitlink:git-fetch-pack[1].
+remote.<name>.tagopt::
+ Setting this value to --no-tags disables automatic tag following when fetching
+ from remote <name>
+
+remotes.<group>::
+ The list of remotes which are fetched by "git remote update
+ <group>". See gitlink:git-remote[1].
+
repack.usedeltabaseoffset::
Allow gitlink:git-repack[1] to create packs that uses
delta-base offset. Defaults to false.
diff --git a/Documentation/git-clone.txt b/Documentation/git-clone.txt
index 707376f22c..6d32c491a5 100644
--- a/Documentation/git-clone.txt
+++ b/Documentation/git-clone.txt
@@ -11,7 +11,7 @@ SYNOPSIS
[verse]
'git-clone' [--template=<template_directory>] [-l [-s]] [-q] [-n] [--bare]
[-o <name>] [-u <upload-pack>] [--reference <repository>]
- [--depth=<depth>] <repository> [<directory>]
+ [--depth <depth>] <repository> [<directory>]
DESCRIPTION
-----------
@@ -96,7 +96,7 @@ OPTIONS
if unset the templates are taken from the installation
defined default, typically `/usr/share/git-core/templates`.
---depth=<depth>::
+--depth <depth>::
Create a 'shallow' clone with a history truncated to the
specified number of revs. A shallow repository has
number of limitations (you cannot clone or fetch from
diff --git a/Documentation/git-cvsexportcommit.txt b/Documentation/git-cvsexportcommit.txt
index 27d531b888..555b8234f0 100644
--- a/