summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2007-02-26Merge branch 'master' into js/diff-niLibravatar Junio C Hamano109-2908/+6722
* 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 ...
2007-02-26Documentation: link in 1.5.0.2 material to the top documentation page.Libravatar Junio C Hamano1-1/+3
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-02-26Documentation: document remote.<name>.tagoptLibravatar Aneesh Kumar K.V1-0/+4
Update config.txt with info regarding tagopt option Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-02-26Merge branch 'maint'Libravatar Junio C Hamano4-18/+64
* maint: 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.
2007-02-26GIT 1.5.0.2Libravatar Junio C Hamano2-12/+18
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-02-26git-remote: support remotes with a dot in the nameLibravatar Pavel Roskin1-1/+1
[jc: the original from Pavel was limiting the variable names to only fetch and url, but I loosened it to take valid variable names.] [jc: cherry-picked from 'master', since people seem to be reinventing this many times.] Signed-off-by: Pavel Roskin <proski@gnu.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-02-25Documentation: describe "-f/-t/-m" options to "git-remote add"Libravatar Junio C Hamano1-0/+13
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-02-25diff --cc: fix display of symlink conflicts during a merge.Libravatar Junio C Hamano2-7/+34
"git-diff-files --cc" to show conflicts during merge did not pass the correct mode information for the working tree down, and showed bogus combined diff. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-02-25Merge branch 'maint'Libravatar Junio C Hamano2-2/+2
* maint: merge-recursive: fix longstanding bug in merging symlinks merge-index: fix longstanding bug in merging symlinks
2007-02-25Merge branch 'jc/merge-symlink' into maintLibravatar Junio C Hamano2-2/+2
* jc/merge-symlink: merge-recursive: fix longstanding bug in merging symlinks merge-index: fix longstanding bug in merging symlinks
2007-02-25merge-recursive: fix longstanding bug in merging symlinksLibravatar Junio C Hamano1-1/+1
Commit 3af244ca added unlink(2) before running symlink(2) to update the working tree with the merge result, but it was unlinking a wrong path. This resulted in loss of the path pointed by a symlink. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-02-25merge-index: fix longstanding bug in merging symlinksLibravatar Junio C Hamano1-1/+1
Ancient commit e2b6a9d0 added code to pass "file modes" from merge-index to merge-one-file, and then later commit 54dd99a1 wanted to make sure we do not end up creating a nonsense symlink that points at a path whose name contains conflict markers. However, nobody noticed that the code in merge-index added by e2b6a9d0 were stripping the S_IFMT bits and the code in 54dd99a1 was meaningless. This fixes it. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-02-25Fix typo: do not show name1 when name2 failsLibravatar Johannes Schindelin1-1/+1
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-02-25diff --cached: give more sensible error message when HEAD is yet to be created.Libravatar Junio C Hamano1-0/+2
It is not like the user said 'diff --cached HEAD', so complaining about HEAD not being a valid commit, while technically might be correct, is not very helpful. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-02-25Update tests to use test-chmtimeLibravatar Eric Wong3-34/+27
test-lib: Make sure test-chmtime has been built before starting. t4200-rerere: Removed non-portable date dependency and avoid touch Avoid "test -a" which isn't portable, either lib-git-svn: Use test-chmtime instead of Perl one-liner to poke Signed-off-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-02-25Add test-chmtime: a utility to change mtime on filesLibravatar Eric Wong3-1/+66
This is intended to be a portable replacement for our usage of date(1), touch(1), and Perl one-liners in tests. Usage: test-chtime (+|=|-|=+|=-)<seconds> <file>..." '+' increments the mtime on the files by <seconds> '-' decrements the mtime on the files by <seconds> '=' sets the mtime on the file to exactly <seconds> '=+' and '=-' sets the mtime on the file to <seconds> after or before the current time. Signed-off-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-02-25Merge branch 'maint'Libravatar Junio C Hamano4-15/+97
* maint: 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.
2007-02-25Add Release Notes to prepare for 1.5.0.2Libravatar Junio C Hamano2-1/+60
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-02-25Allow arbitrary number of arguments to git-pack-objectsLibravatar Roland Dreier1-3/+9
If a repository ever gets in a situation where there are too many packs (more than 60 or so), perhaps because of frequent use of git-fetch -k or incremental git-repack, then it becomes impossible to fully repack the repository with git-repack -a. That command just dies with the cryptic message fatal: too many internal rev-list options This message comes from git-pack-objects, which is passed one command line option like --unpacked=pack-<SHA1>.pack for each pack file to be repacked. However, the current code has a static limit of 64 command line arguments and just aborts if more arguments are passed to it. Fix this by dynamically allocating the array of command line arguments, and doubling the size each time it overflows. Signed-off-by: Roland Dreier <roland@digitalvampire.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-02-25rerere: do not deal with symlinks.Libravatar Junio C Hamano1-5/+9
Who would use multi-line symlinks that would benefit from rerere? Just ignore them. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-02-25rerere: do not skip two conflicted paths next to each other.Libravatar Junio C Hamano1-1/+1
The code forgot to take the for (;;) loop control into account, incrementing the index once too many. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-02-24Merge git://repo.or.cz/git-gui into maintLibravatar Junio C Hamano1-6/+19
* git://repo.or.cz/git-gui: Don't modify CREDITS-FILE if it hasn't changed.
2007-02-25Don't modify CREDITS-FILE if it hasn't changed.Libravatar Junio C Hamano1-6/+19
We should always avoid rewriting a built file during `make install` if nothing has changed since `make all`. This is to help support the typical installation process of compiling a package as yourself, then installing it as root. Forcing CREDITS-FILE to be always be rebuilt in the Makefile means that CREDITS-GEN needs to check for a change and only update CREDITS-FILE if the file content actually differs. After all, content is king in Git. Signed-off-by: Junio C Hamano <junkio@cox.net> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2007-02-24Evil Merge branch 'jc/status' (early part) into js/diff-niLibravatar Junio C Hamano6-22/+44
* 'jc/status' (early part): run_diff_{files,index}(): update calling convention. update-index: do not die too early in a read-only repository. git-status: do not be totally useless in a read-only repository. This is to resolve semantic conflict (which is not textual) that changes the calling convention of run_diff_files() early.
2007-02-24Merge branch 'js/apply'Libravatar Junio C Hamano1-1/+6
* js/apply: apply: make --verbose a little more useful
2007-02-24Merge branch 'js/no-limit-boundary'Libravatar Junio C Hamano1-4/+21
* js/no-limit-boundary: rev-list --max-age, --max-count: support --boundary
2007-02-24Merge branch 'js/etc-config'Libravatar Junio C Hamano5-7/+22
* js/etc-config: Make tests independent of global config files config: read system-wide defaults from /etc/gitconfig
2007-02-24Merge branch 'maint'Libravatar Junio C Hamano5-16/+41
* maint: 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 git-show-ref --verify: Fail if called without a reference Conflicts: builtin-show-ref.c diff.c
2007-02-24diff-patch: Avoid emitting double-slashes in textual patch.Libravatar Junio C Hamano1-2/+4
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-02-24Reword git-am 3-way fallback failure message.Libravatar Junio C Hamano1-1/+1
When the blobs recorded on the index lines in the patch as pre-image blobs are not found in the repository, "git-am" punted saying that the index line does not record anything useful. This was not clear enough -- the index line does have something useful but the problem was that it was not useful in _that_ repository. Reword the message as Francis Moreau suggests. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-02-24Limit filename for format-patchLibravatar Robin Rosenberg1-7/+21
Badly formatted commits may have very long comments. This causes git-format-patch to fail. To avoid that, truncate the filename to a value we believe will always work. Err out if the patch file cannot be created. Signed-off-by: Robin Rosenberg <robin.rosenberg@dewire.com> Acked-by: Johannes Schindelin <Johannes.Schindelin@gmx.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-02-24core.legacyheaders: Use the description used in RelNotes-1.5.0Libravatar Santi Béjar1-4/+11
It explains what it does and why, and says how to use the new format. Signed-off-by: Santi Béjar <sbejar@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-02-24git-show-ref --verify: Fail if called without a referenceLibravatar Dmitry V. Levin1-2/+4
builtin-show-ref.c (cmd_show_ref): Fail if called with --verify option but without a reference. Signed-off-by: Dmitry V. Levin <ldv@altlinux.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-02-23.mailmap maintenance after pulling from git-svnLibravatar Junio C Hamano1-0/+1
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-02-23git-svn: fix some potential bugs with --follow-parentLibravatar Eric Wong1-1/+5
When using do_switch: We only need to ensure the index is clean and set to that of the parent tree) we rely on being able to reconstruct full files with deltas transferred over the network. When using do_update: We may safely unlink the index if we are fetching an entire new tree with do_update. Having an old index (from a previously deleted/abandoned directory) around can cause irrelevant files to be mistakenly kept. Signed-off-by: Eric Wong <normalperson@yhbt.net>
2007-02-23git-svn: fix reconnections to different paths of svn:// repositoriesLibravatar Eric Wong1-0/+1
Clearing the pool of the previous SVN::Ra connection we have seems to to fix mysterious connection dropping errors when reconnecting to different paths of svn:// repositories hosted by rubyforge.org. Note: I'm not sure *why* this fixes things things, but it does for me. Signed-off-by: Eric Wong <normalperson@yhbt.net>
2007-02-23git-svn: fix clone when a target directory has been specifiedLibravatar Eric Wong1-7/+3
Several bugs caused this to fail: * GIT_DIR was set incorrectly after entering the target directory * Avoid double chdir-ing when clone is called with an explicit path * create target subdirectory *before* running git-init when using the multi-init path Signed-off-by: Eric Wong <normalperson@yhbt.net>
2007-02-23git-svn: document --usernameLibravatar Sam Vilain1-0/+5
Also, it turns out that SVN::Ra doesn't attempt to deal with authentication or pass the username to ssh when doing svn+ssh:// URLs Signed-off-by: Eric Wong <normalperson@yhbt.net>
2007-02-23git-svn: don't consider SVN URL usernames significant when comparingLibravatar Sam Vilain1-0/+8
http://foo@blah.com/path is the same as http://blah.com/path, so remove usernames from URLs before storing them in commits, and when reading them from commits. Signed-off-by: Eric Wong <normalperson@yhbt.net>
2007-02-23git-svn: ensure we're at the top-level and can access $GIT_DIRLibravatar Eric Wong1-0/+23
If we are run inside a subdirectory of a working tree, we'll chdir to the top first before touching anything. This also prevents the accidental creation of .git directories inside subdirectories since they need metadata. Noticed by maio on #git Signed-off-by: Eric Wong <normalperson@yhbt.net>
2007-02-23git-svn: give show-ignore HEAD smarts, like dcommit and logLibravatar Eric Wong1-1/+3
This allows the user to run git-svn show-ignore on there current HEAD without needing to remember which branch/ref they branched from with -i. Also, find_by_url should correctly handle cases where the URL passed to it is not valid. Signed-off-by: Eric Wong <normalperson@yhbt.net>
2007-02-23git-svn: allow metadata options to be specified with 'init' and 'clone'Libravatar Eric Wong2-8/+29
Since the options that affect the way metadata is handled in git-svn, should be consistently set/unset throughout history imported by git-svn; it makes sense to allow the user to set certain options from the command-line that will write to the config file when initially creating the repository. Also, fix some formatting issues while we're updating documentation. Signed-off-by: Eric Wong <normalperson@yhbt.net>
2007-02-23git-svn: documentation updatesLibravatar Eric Wong1-34/+81
This documents the 'clone' and 'rebase' commands of git-svn. Additionaly, examples are updated to use them instead of the lower-level 'init' and 'fetch' commands. Signed-off-by: Eric Wong <normalperson@yhbt.net>
2007-02-23git-svn: add test for useSvnsyncPropsLibravatar Eric Wong2-0/+613
These tests are very similar as the ones I used for useSvmProps and expect the same results because both dumps were generated from the same original repo. Signed-off-by: Eric Wong <normalperson@yhbt.net>
2007-02-23git-svn: fix useSvmProps, hopefully for the last timeLibravatar Eric Wong4-140/+619
svm:mirror is not useful at all for us. Parts of the old unit test were broken and based on my misunderstanding of the svm:mirror property. When we read svm:source; make sure we correctly handle the '!' in it: it is used to separate the path of the repository root from the virtual path within the repository. We don't need to make that distinction, honestly! We also ensure that subdirectories are also mirrored with the correct URL if we're using useSvmProps. We have a new test that uses dumped repo that was really created using SVN::Mirror to avoid ambiguities and mis-understandings about the svm: properties. Note: trailing whitespace in the svm.dump file is unfortunately a reality and required by SVN; so please ignore it when applying this patch. Also, ensure that the -R/--remote/--svn-remote flag is always in effect if explicitly passed via the command-line. This allows us to track logically different mirrors sharing the same URL (probably common with SVN::Mirror/SVK users). Signed-off-by: Eric Wong <normalperson@yhbt.net>
2007-02-23git-svn: add support for using svnsync propertiesLibravatar Eric Wong1-2/+58
This is similar to useSvmProps, but far simpler in implementation because svnsync retains a 1:1 between revision numbers and relative paths within the repository Config keys: svn.useSvnsyncProps svn-remote.<repo>.useSvnsyncProps Signed-off-by: Eric Wong <normalperson@yhbt.net>
2007-02-23git-svn: allow overriding of the SVN repo root in metadataLibravatar Eric Wong1-1/+25
This feature allows users to create repositories from alternate URLs. For example, an administrator could run git-svn on the server locally (accessing via file://) but wish to distribute the repository with a public http:// or svn:// URL in the metadata so users of it will see the public URL. Config key: svn-remote.<remote>.rewriteRoot Signed-off-by: Eric Wong <normalperson@yhbt.net>
2007-02-23git-svn: add 'clone' command, an alias for init + fetchLibravatar Eric Wong1-1/+20
Signed-off-by: Eric Wong <normalperson@yhbt.net>
2007-02-23git-svn: hide the private git-svn 'config' file as '.metadata'Libravatar Eric Wong2-1/+7
Having it named as 'config' prevents us from tracking a ref named 'config', which is a huge mistake. On the non-technical side, the word 'config' implies that a user can freely modify it; but that's not the case here. Signed-off-by: Eric Wong <normalperson@yhbt.net>
2007-02-23git-svn: fix some issues for people migrating from older versionsLibravatar Eric Wong1-4/+6
* Fixed logic for renaming old .rev_db -> .rev_db.$uuid * correctly handle manual migrations for those who decide to start use globbing to handle branches/tags over individual 'fetch' keys Signed-off-by: Eric Wong <normalperson@yhbt.net>