1b7e543 | Dévai Tamás | 11 February 2009, 23:14:02 UTC | git-svn: Fix for rewriteRoot URL containing username. If the new svn root URL given with the svn-remote.<repo>.rewriteRoot config option (or by the --rewrite-root option to 'git svn init') contains a username (such as 'svn+ssh://username@example.com/repo'), find_by_url() cannot find the repository URL, because the URL contained in the commit message does have the username removed. Signed-off-by: Dévai Tamás <devait@mailbox.sk> Acked-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 16 February 2009, 02:04:48 UTC |
88a667f | René Scharfe | 15 February 2009, 18:18:58 UTC | builtin-receive-pack.c: fix compiler warnings about format string While all of the strings passed to warning() are, in fact, literals, the compiler doesn't recognize them as such because it doesn't see through the loop used to iterate over them: builtin-receive-pack.c: In function 'warn_unconfigured_deny': builtin-receive-pack.c:247: warning: format not a string literal and no format arguments builtin-receive-pack.c: In function 'warn_unconfigured_deny_delete_current': builtin-receive-pack.c:273: warning: format not a string literal and no format arguments Calm the compiler by adding easily recognizable format string literals. Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 15 February 2009, 19:14:12 UTC |
075394e | Junio C Hamano | 15 February 2009, 08:15:52 UTC | RelNotes Update Signed-off-by: Junio C Hamano <gitster@pobox.com> | 15 February 2009, 09:49:13 UTC |
f7a2bdb | Junio C Hamano | 15 February 2009, 09:44:58 UTC | Merge branch 'mc/setup-cd-p' * mc/setup-cd-p: git-sh-setup: Use "cd" option, not /bin/pwd, for symlinked work tree | 15 February 2009, 09:44:58 UTC |
7b83a92 | Junio C Hamano | 15 February 2009, 09:44:20 UTC | Merge branch 'ff/submodule-no-fetch' * ff/submodule-no-fetch: submodule: add --no-fetch parameter to update command | 15 February 2009, 09:44:20 UTC |
160d2bc | Junio C Hamano | 15 February 2009, 09:44:15 UTC | Merge branch 'ms/mailmap' * ms/mailmap: Move mailmap documentation into separate file Change current mailmap usage to do matching on both name and email of author/committer. Add map_user() and clear_mailmap() to mailmap Add find_insert_index, insert_at_index and clear_func functions to string_list Add mailmap.file as configurational option for mailmap location | 15 February 2009, 09:44:15 UTC |
2a8644c | Junio C Hamano | 15 February 2009, 09:44:11 UTC | Merge branch 'jn/gitweb-committag' * jn/gitweb-committag: gitweb: Better regexp for SHA-1 committag match | 15 February 2009, 09:44:11 UTC |
c42b04b | Junio C Hamano | 15 February 2009, 09:43:57 UTC | Merge branch 'rc/http-push' * rc/http-push: use a hash of the lock token as the suffix for PUT/MOVE | 15 February 2009, 09:43:57 UTC |
dfab7c1 | Tay Ray Chuan | 14 February 2009, 09:52:14 UTC | use a hash of the lock token as the suffix for PUT/MOVE After 753bc91 ("Remove the requirement opaquelocktoken uri scheme"), lock tokens are in the URI forms in which they are received from the server, eg. 'opaquelocktoken:', 'urn:uuid:'. However, "start_put" (and consequently "start_move"), which attempts to create a unique temporary file using the UUID of the lock token, inadvertently uses the lock token in its URI form. These file operations on the server may not be successful (specifically, in Windows), due to the colon ':' character from the URI form of the lock token in the file path. This patch uses a hash of the lock token instead, guaranteeing only "safe" characters (a-f, 0-9) are used in the file path. The token's hash is generated when the lock token is received from the server in handle_new_lock_ctx, minimizing the number of times of hashing. Signed-off-by: Tay Ray Chuan <rctay89@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 15 February 2009, 08:57:43 UTC |
43e35f6 | Junio C Hamano | 15 February 2009, 08:05:11 UTC | Merge branch 'js/gc-prune' * js/gc-prune: gc: make --prune useful again by accepting an optional parameter | 15 February 2009, 08:05:11 UTC |
b43174e | Junio C Hamano | 15 February 2009, 08:03:43 UTC | Merge branch 'tr/abbrev-commit-no-ellipses' * tr/abbrev-commit-no-ellipses: log: do not print ellipses with --abbrev-commit | 15 February 2009, 08:03:43 UTC |
472e474 | Junio C Hamano | 15 February 2009, 08:03:29 UTC | Merge branch 'jc/branch-previous' * jc/branch-previous: Teach @{-1} to git merge Teach the "@{-1} syntax to "git branch" | 15 February 2009, 08:03:29 UTC |
48c9ab7 | SZEDER Gábor | 14 February 2009, 16:21:52 UTC | bash: fix misspelled 'git svn' option '--user-log-author' -> '--use-log-author' Signed-off-by: SZEDER Gábor <szeder@ira.uka.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 15 February 2009, 05:31:16 UTC |
db7fee8 | SZEDER Gábor | 14 February 2009, 16:16:29 UTC | t1500: more 'git rev-parse --git-dir' tests Extend t1500 with tests of 'git rev-parse --git-dir' when invoked from other directories of the repository or the work tree. Signed-off-by: SZEDER Gábor <szeder@ira.uka.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 15 February 2009, 05:29:50 UTC |
8fb3c00 | SZEDER Gábor | 14 February 2009, 16:16:28 UTC | Move 'rev-parse --git-dir' test to t1500 Commit 72183cb2 (Fix gitdir detection when in subdir of gitdir, 2009-01-16) added a test to 't1501-worktree' to check the behaviour of 'git rev-parse --git-dir' in a special case. However, t1501 is about testing separate work tree setups, and not about basic 'rev-parse' functionality, which is tested in t1500-rev-parse. Therefore, this patch moves that test to t1500. Signed-off-by: SZEDER Gábor <szeder@ira.uka.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 15 February 2009, 05:29:46 UTC |
d0268de | Thomas Rast | 14 February 2009, 20:56:51 UTC | Documentation: pruning recipe for destructive filter-branch Add a section about how to shrink a repository's size after running git-filter-branch to remove large blobs from history. This comes up every week or so on IRC, and the commands required to handle every case are not very newbie-friendly, so hopefully writing them down somewhere leads to fewer questions. It may seem contradictory to document fallbacks for older Gits in newer docs, but we want to point people at this as a FAQ answer, and they will frequently not have the newest version installed. Thanks to Björn Steinbrink and Junio C Hamano for comments and corrections. Signed-off-by: Thomas Rast <trast@student.ethz.ch> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 15 February 2009, 05:18:54 UTC |
58e9d9d | Johannes Schindelin | 14 February 2009, 22:10:10 UTC | gc: make --prune useful again by accepting an optional parameter With this patch, "git gc --no-prune" will not prune any loose (and dangling) object, and "git gc --prune=5.minutes.ago" will prune all loose objects older than 5 minutes. This patch benefitted from suggestions by Thomas Rast and Jan Krï¿œger. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 15 February 2009, 05:14:07 UTC |
c9717ee | Junio C Hamano | 14 February 2009, 07:26:12 UTC | Teach @{-1} to git merge 1.6.2 will have @{-1} syntax advertised as "usable anywhere you can use a branch name". However, "git merge @{-1}" did not work. Signed-off-by: Junio C Hamano <gitster@pobox.com> | 14 February 2009, 07:46:42 UTC |
8415d5c | Junio C Hamano | 14 February 2009, 07:08:05 UTC | Teach the "@{-1} syntax to "git branch" This teaches the new "@{-1} syntax to refer to the previous branch to "git branch". After looking at somebody's faulty patch series on a topic branch too long, if you decide it is not worth merging, you can just say: $ git checkout master $ git branch -D @{-1} to get rid of it without having to type the name of the topic you now hate so much for wasting a lot of your time. Signed-off-by: Junio C Hamano <gitster@pobox.com> | 14 February 2009, 07:46:28 UTC |
e9cc02f | Jeff King | 13 February 2009, 18:26:09 UTC | symbolic-ref: allow refs/<whatever> in HEAD Commit afe5d3d5 introduced a safety valve to symbolic-ref to disallow installing an invalid HEAD. It was accompanied by b229d18a, which changed validate_headref to require that HEAD contain a pointer to refs/heads/ instead of just refs/. Therefore, the safety valve also checked for refs/heads/. As it turns out, topgit is using refs/top-bases/ in HEAD, leading us to re-loosen (at least temporarily) the validate_headref check made in b229d18a. This patch does the corresponding loosening for the symbolic-ref safety valve, so that the two are in agreement once more. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 14 February 2009, 02:20:44 UTC |
4b15b4a | Keith Cascio | 13 February 2009, 17:33:34 UTC | Remove redundant bit clears from diff_setup() All bits already clear after memset(0). Signed-off-by: Junio C Hamano <gitster@pobox.com> | 14 February 2009, 02:19:37 UTC |
7fcda92 | Thomas Rast | 13 February 2009, 22:10:41 UTC | log: do not print ellipses with --abbrev-commit 'git log --abbrev-commit' added an ellipsis to all commit names that were abbreviated. This was particularly annoying if you wanted to cut&paste the sha1 from the terminal, since selecting by word would pick up '...' too. So use find_unique_abbrev() instead of diff_unique_abbrev() in all log-related commit sha1 printing routines, and also change the formatting of the 'Merge: parent1 parent2' line output via pretty_print_commit(). Signed-off-by: Thomas Rast <trast@student.ethz.ch> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 14 February 2009, 01:18:22 UTC |
901d615 | Matt Kraai | 12 February 2009, 15:55:54 UTC | bash-completion: Complete the values of color.interactive, color.ui, color.pager Signed-off-by: Matt Kraai <kraai@ftbfs.org> Acked-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 13 February 2009, 17:55:45 UTC |
5cd12b8 | Junio C Hamano | 12 February 2009, 06:42:27 UTC | Install the default "master" branch configuration after cloning a void After "cloning from an empty repository", we have a configuration to describe the remote's URL and the default ref mappings, but we lack the branch configuration for the default branch we create on our end, "master". It is likely that the empty repository we cloned from will point the default "master" branch with its HEAD, so prepare the local configuration to match. Signed-off-by: Junio C Hamano <gitster@pobox.com> | 13 February 2009, 06:37:35 UTC |
1a526d4 | Jeremy White | 12 February 2009, 21:17:04 UTC | Update documentation to add further information about using Thunderbird with git-imap-send. Signed-off-by: Jeremy White <jwhite@codeweavers.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 13 February 2009, 01:46:05 UTC |
7fe5438 | Mark Burton | 12 February 2009, 10:21:19 UTC | git-rebase.txt: --interactive does not work with --whitespace Signed-off-by: Mark Burton <markb@ordern.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 13 February 2009, 00:50:28 UTC |
49bde75 | Jacob Helwig | 12 February 2009, 18:01:10 UTC | Add 'rm -f' equivalent to 'git rm' example of filter-branch --index-filter Signed-off-by: Jacob Helwig <jacob.helwig@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 12 February 2009, 23:44:56 UTC |
222b167 | Junio C Hamano | 12 February 2009, 21:02:09 UTC | Revert "validate_headref: tighten ref-matching to just branches" This reverts commit b229d18a809c169314b7f0d048dc5a7632e8f916, at least until we figure out how to work better with TopGit that points HEAD to refs/top-bases/ hierarchy. | 12 February 2009, 21:02:09 UTC |
a8344ab | Nazri Ramliy | 12 February 2009, 13:36:14 UTC | Bugfix: GIT_EXTERNAL_DIFF with more than one changed files When there is more than one file that are changed, running git diff with GIT_EXTERNAL_DIFF incorrectly diagnoses an programming error and dies. The check introduced in 479b0ae (diff: refactor tempfile cleanup handling, 2009-01-22) to detect a temporary file slot that forgot to remove its temporary file was inconsistent with the way the codepath to remove the temporary to mark the slot that it is done with it. This patch fixes this problem and adds a test case for it. Signed-off-by: Nazri Ramliy <ayiehere@gmail.com> Acked-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 12 February 2009, 20:31:52 UTC |
30aa4fb | Junio C Hamano | 12 February 2009, 02:47:30 UTC | Merge branch 'maint' * maint: Prepare for 1.6.1.4. Make repack less likely to corrupt repository fast-export: ensure we traverse commits in topological order Clear the delta base cache if a pack is rebuilt Conflicts: RelNotes | 12 February 2009, 02:47:30 UTC |
e5887c1 | Junio C Hamano | 12 February 2009, 02:44:03 UTC | Prepare for 1.6.1.4. Signed-off-by: Junio C Hamano <gitster@pobox.com> | 12 February 2009, 02:44:03 UTC |
7a134db | Junio C Hamano | 12 February 2009, 02:32:37 UTC | Merge branch 'maint-1.6.0' into maint * maint-1.6.0: Make repack less likely to corrupt repository fast-export: ensure we traverse commits in topological order Clear the delta base cache if a pack is rebuilt | 12 February 2009, 02:32:37 UTC |
3e6b1d0 | Junio C Hamano | 10 February 2009, 20:16:31 UTC | Make repack less likely to corrupt repository Some platforms refuse to rename a file that is open. When repacking an already packed repository without adding any new object, the resulting pack will contain the same set of objects as an existing pack, and on such platforms, a newly created packfile cannot replace the existing one. The logic detected this issue but did not try hard enough to recover from it. Especially because the files that needs renaming come in pairs, there potentially are different failure modes that one can be renamed but the others cannot. Asking manual recovery to end users were error prone. This patch tries to make it more robust by first making sure all the existing files that need to be renamed have been renamed before continuing, and attempts to roll back if some failed to rename. This is based on an initial patch by Robin Rosenberg. Signed-off-by: Junio C Hamano <gitster@pobox.com> | 12 February 2009, 02:32:16 UTC |
784f8af | Elijah Newren | 11 February 2009, 06:03:53 UTC | fast-export: ensure we traverse commits in topological order fast-export will only list as parents those commits which have already been traversed (making it appear as if merges have been squashed if not all parents have been traversed). To avoid this silent squashing of merge commits, we request commits in topological order. Signed-off-by: Elijah Newren <newren@gmail.com> Acked-by: Johannes Schindelin <Johannes.Schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 12 February 2009, 02:30:17 UTC |
0ea29cc | Eric Kidd | 11 February 2009, 21:10:41 UTC | filter-branch: Add more error-handling 9273b56 (filter-branch: Fix fatal error on bare repositories, 2009-02-03) fixed a missing check of return status from an underlying command in git-filter-branch, but there still are places that do not check errors. For example, the command does not pay attention to the exit status of the command given by --commit-filter. It should abort in such a case. This attempts to fix all the remaining places that fails to checks errors. In two places, I've had to break apart pipelines in order to check the error code for the first stage of the pipeline, as discussed here: http://kerneltrap.org/mailarchive/git/2009/1/28/4835614 Feedback on this patch was provided by Johannes Sixt, Johannes Schindelin and Junio C Hamano. Thomas Rast helped with pipeline error handling. Signed-off-by: Eric Kidd <git@randomhacks.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 12 February 2009, 02:26:52 UTC |
e5f5050 | Pat Notz | 10 February 2009, 16:43:30 UTC | Fix contrib/hooks/post-receive-email for new duplicate branch In the show_new_revisions function, the original code: git rev-parse --not --branches | grep -v $(git rev-parse $refname) | isn't quite right since one can create a new branch and push it without any new commits. In that case, two refs will have the same sha1 but both would get filtered by the 'grep'. In the end, we'll show ALL the history which is not what we want. Instead, we should list the branches by name and remove the branch being updated and THEN pass that list through rev-parse. Revised as suggested by Jakub Narebski and Junio C Hamano to use git-for-each-ref instead of git-branch. (Thanks!) Signed-off-by: Pat Notz <pknotz@sandia.gov> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 11 February 2009, 18:38:53 UTC |
fa3a0c9 | Shawn O. Pearce | 11 February 2009, 18:15:30 UTC | Clear the delta base cache if a pack is rebuilt There is some risk that re-opening a regenerated pack file with different offsets could leave stale entries within the delta base cache that could be matched up against other objects using the same "struct packed_git*" and pack offset. Throwing away the entire delta base cache in this case is safer, as we don't have to worry about a recycled "struct packed_git*" matching to the wrong base object, resulting in delta apply errors while unpacking an object. Suggested-by: Daniel Barkalow <barkalow@iabervon.org> Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 11 February 2009, 18:25:24 UTC |
7b73d82 | Junio C Hamano | 11 February 2009, 18:20:12 UTC | Merge git://git.bogomips.org/git-svn * git://git.bogomips.org/git-svn: test case for regression caused by git-svn empty symlink fix git-svn: fix broken symlink workaround when switching branches git-svn: Print revision while searching for earliest use of path git-svn: abstract out a block into new method other_gs() git-svn: allow disabling expensive broken symlink checks | 11 February 2009, 18:20:12 UTC |
9e5b80c | Junio C Hamano | 11 February 2009, 17:22:16 UTC | Squelch overzealous "ignoring dangling symref" in an empty repository 057e713 (Warn use of "origin" when remotes/origin/HEAD is dangling, 2009-02-08) tried to warn dangling refs/remotes/origin/HEAD only when "origin" was used to refer to it. There was one corner case a symref is expected to be dangling and this warning is unwarranted: HEAD in an empty repository. This squelches the warning for this special case. Signed-off-by: Junio C Hamano <gitster@pobox.com> | 11 February 2009, 17:22:16 UTC |
39111f6 | Anton Gyllenberg | 10 February 2009, 22:38:45 UTC | test case for regression caused by git-svn empty symlink fix Commit dbc6c74d0858d77e61e092a48d467e725211f8e9 "git-svn: handle empty files marked as symlinks in SVN" caused a regression in an unusual case where a branch has been created in SVN, later deleted and then created again from another branch point and the original branch point had empty files not in the new branch. In some cases git svn fetch will then fail while trying to fetch the empty file from the wrong SVN revision. This adds a test case that reproduces the issue. [ew: added additional test to ensure file was created correctly made test file executable ] Signed-off-by: Anton Gyllenberg <anton@iki.fi> Acked-by: Eric Wong <normalperson@yhbt.net> | 11 February 2009, 10:02:04 UTC |
8841b37 | Eric Wong | 11 February 2009, 09:56:58 UTC | git-svn: fix broken symlink workaround when switching branches Thanks to Anton Gyllenberg <anton@iki.fi> for the bug report (and testcase in the following commit): > Commit dbc6c74d0858d77e61e092a48d467e725211f8e9 "git-svn: > handle empty files marked as symlinks in SVN" caused a > regression in an unusual case where a branch has been created > in SVN, later deleted and then created again from another > branch point and the original branch point had empty files not > in the new branch. In some cases git svn fetch will then fail > while trying to fetch the empty file from the wrong SVN > revision. Signed-off-by: Eric Wong <normalperson@yhbt.net> | 11 February 2009, 10:02:04 UTC |
9936656 | Deskin Miller | 09 February 2009, 00:33:18 UTC | git-svn: Print revision while searching for earliest use of path When initializing a git-svn repository from a Subversion repoository, it is common to be interested in a path which did not exist in the initial commit to Subversion. In a large repository, the initial fetch may take some looking for the earliest existence of the path time while the user receives no additional feedback. Print the highest revision number scanned thus far to let the user know something is still happening. Signed-off-by: Deskin Miller <deskinm@umich.edu> | 11 February 2009, 10:00:42 UTC |
8e3f9b1 | Sam Vilain | 26 June 2007, 07:23:59 UTC | git-svn: abstract out a block into new method other_gs() We will be adding a more places that need to find git revisions corresponding to new parents, so abstract out this section into a new method. Signed-off-by: Yuval Kogman <nothingmuch@woobling.org> Signed-off-by: Sam Vilain <sam@vilain.net> Acked-by: Eric Wong <normalperson@yhbt.net> [ew: minor formatting changes] | 11 February 2009, 10:00:42 UTC |
4c58a71 | Eric Wong | 01 February 2009, 01:31:12 UTC | git-svn: allow disabling expensive broken symlink checks Since dbc6c74d0858d77e61e092a48d467e725211f8e9, git-svn has had an expensive check for broken symlinks that exist in some repositories. This leads to a heavy performance hit on repositories with many empty blobs that are not supposed to be symlinks. The workaround is enabled by default; and may be disabled via: git config svn.brokenSymlinkWorkaround false Reported by Markus Heidelberg. Signed-off-by: Eric Wong <normalperson@yhbt.net> | 11 February 2009, 10:00:42 UTC |
aff4e8d | Junio C Hamano | 11 February 2009, 10:00:22 UTC | Merge branch 'maint' * maint: revision traversal and pack: notice and die on missing commit | 11 February 2009, 10:00:22 UTC |
268c015 | Junio C Hamano | 11 February 2009, 10:00:07 UTC | Merge branch 'maint-1.5.6' into maint * maint-1.5.6: revision traversal and pack: notice and die on missing commit | 11 February 2009, 10:00:07 UTC |
afce435 | Junio C Hamano | 11 February 2009, 09:41:22 UTC | Merge branch 'maint-1.5.5' into maint-1.5.6 * maint-1.5.5: revision traversal and pack: notice and die on missing commit Conflicts: revision.c | 11 February 2009, 09:41:22 UTC |
9279870 | Junio C Hamano | 11 February 2009, 09:40:12 UTC | Merge branch 'maint-1.5.4' into maint-1.5.5 * maint-1.5.4: revision traversal and pack: notice and die on missing commit | 11 February 2009, 09:40:12 UTC |
ed62089 | Junio C Hamano | 11 February 2009, 09:27:43 UTC | revision traversal and pack: notice and die on missing commit cc0e6c5 (Handle return code of parse_commit in revision machinery, 2007-05-04) attempted to tighten error checking in the revision machinery, but it wasn't enough. When get_revision_1() was asked for the next commit to return, it tries to read and simplify the parents of the commit to be returned, but an error while doing so was silently ignored and reported as a truncated history to the caller instead. This resulted in an early end of "git log" output or a pack that lacks older commits from "git pack-objects", without any error indication in the exit status from these commands, even though the underlying parse_commit() issues an error message to the end user. Note that the codepath in add_parents_list() that paints parents of an UNINTERESTING commit UNINTERESTING silently ignores the error when parse_commit() fails; this is deliberate and in line with aeeae1b (revision traversal: allow UNINTERESTING objects to be missing, 2009-01-27). Signed-off-by: Junio C Hamano <gitster@pobox.com> | 11 February 2009, 09:29:52 UTC |
1b53a07 | Junio C Hamano | 09 February 2009, 06:19:43 UTC | builtin-receive-pack.c: do not initialize statics to 0 Signed-off-by: Junio C Hamano <gitster@pobox.com> | 11 February 2009, 06:27:14 UTC |
747ca24 | Junio C Hamano | 09 February 2009, 06:31:21 UTC | receive-pack: receive.denyDeleteCurrent This is a companion patch to the recent 3d95d92 (receive-pack: explain what to do when push updates the current branch, 2009-01-31). Deleting the current branch from a remote will result in the next clone from it not check out anything, among other things. It also is one of the cause that makes remotes/origin/HEAD a dangling symbolic ref. This patch still allows the traditional behaviour but with a big warning, and promises that the default will change to 'refuse' in a future release. Signed-off-by: Junio C Hamano <gitster@pobox.com> | 11 February 2009, 06:26:49 UTC |
ba19a80 | Junio C Hamano | 11 February 2009, 01:42:04 UTC | Drop double-semicolon in C The worst offenders are "continue;;" and "break;;" in switch statements. Signed-off-by: Junio C Hamano <gitster@pobox.com> | 11 February 2009, 06:26:37 UTC |
057e713 | Junio C Hamano | 09 February 2009, 07:52:01 UTC | Warn use of "origin" when remotes/origin/HEAD is dangling The previous one squelched the diagnositic message we used to issue every time we enumerated the refs and noticed a dangling ref. This adds the warning back to the place where the user actually attempts to use it. Signed-off-by: Junio C Hamano <gitster@pobox.com> | 11 February 2009, 06:26:32 UTC |
f8948e2 | Junio C Hamano | 09 February 2009, 07:27:10 UTC | remote prune: warn dangling symrefs If you prune from the remote "frotz" that deleted the ref your tracking branch remotes/frotz/HEAD points at, the symbolic ref will become dangling. We used to detect this as an error condition and issued a message every time refs are enumerated. This stops the error message, but moves the warning to "remote prune". Signed-off-by: Junio C Hamano <gitster@pobox.com> | 11 February 2009, 06:26:20 UTC |
8ea7ad6 | Michael J Gruber | 10 February 2009, 15:14:13 UTC | Fix the installation path for html documentation 026fa0d (Move computation of absolute paths from Makefile to runtime in preparation for RUNTIME_PREFIX, 2009-01-18) broke the installation of html documentation. A relative htmldir is given to Documentation/Makefile and html documentations are installed in a subdirectory of "Documentation" in the source tree. Fix this by not exporting htmldir from Makefile; this allows Documentation/Makefile to compute the htmldir from the prefix. Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 11 February 2009, 06:25:54 UTC |
75f3ff2 | Stephan Beyer | 10 February 2009, 14:30:35 UTC | Generalize and libify index_is_dirty() to index_differs_from(...) index_is_dirty() in builtin-revert.c checks if the index is dirty. This patch generalizes this function to check if the index differs from a revision, i.e. the former index_is_dirty() behavior can now be achieved by index_differs_from("HEAD", 0). The second argument "diff_flags" allows to set further diff option flags like DIFF_OPT_IGNORE_SUBMODULES. See DIFF_OPT_* macros in diff.h for a list. index_differs_from() seems to be useful for more than builtin-revert.c, so it is moved into diff-lib.c and also used in builtin-commit.c. Yet to mention: - "rev.abbrev = 0;" can be safely removed. This has no impact on performance or functioning of neither setup_revisions() nor run_diff_index(). - rev.pending.objects is free()d because this fixes a leak. (Also see 295dd2ad "Fix memory leak in traverse_commit_list") Mentored-by: Daniel Barkalow <barkalow@iabervon.org> Mentored-by: Christian Couder <chriscool@tuxfamily.org> Signed-off-by: Stephan Beyer <s-beyer@gmx.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 11 February 2009, 06:25:39 UTC |
fcb6c07 | Stephan Beyer | 09 February 2009, 22:00:45 UTC | Makefile: resort filenames alphabetically Some filenames in the Makefile got out of order. This patch resorts the filename lists which makes it easier to grasp that it is sorted and that this should be kept. Signed-off-by: Stephan Beyer <s-beyer@gmx.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 11 February 2009, 06:25:31 UTC |
2f33415 | Junio C Hamano | 09 February 2009, 21:39:52 UTC | Modernize t5400 test script Many tests checked for failure by hand without using test_must_fail (they probably predate the shell function). When we know the desired outcome, explicitly check for it, instead of checking if the result does not match one possible incorrect outcome. E.g. if you expect a push to be refused, you do not test if the result is different from what was pushed. Instead, make sure that the ref did not before and after the push. The test sequence chdir'ed around and any failure at one point could have started the next test in an unexpected directory. Fix this problem by using subshells as necessary. Signed-off-by: Junio C Hamano <gitster@pobox.com> | 11 February 2009, 06:25:25 UTC |
0ab9a8b | Alexandre Julliard | 09 February 2009, 13:39:30 UTC | Describe notable git.el changes in the release notes Signed-off-by: Alexandre Julliard <julliard@winehq.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 11 February 2009, 06:24:57 UTC |
954cfb5 | Junio C Hamano | 11 February 2009, 05:31:33 UTC | Revert "Merge branch 'js/notes'" This reverts commit 7b75b331f6744fbf953fe8913703378ef86a2189, reversing changes made to 5d680a67d7909c89af96eba4a2d77abed606292b. | 11 February 2009, 05:32:10 UTC |
f1c8a48 | Junio C Hamano | 11 February 2009, 05:31:19 UTC | Merge branch 'lh/submodule-tree-traversal' (early part) * 'lh/submodule-tree-traversal' (early part): tree.c: allow read_tree_recursive() to traverse gitlink entries | 11 February 2009, 05:31:19 UTC |
8c55149 | Junio C Hamano | 11 February 2009, 05:31:08 UTC | Merge branch 'js/git-submodule-trailing-slash' * js/git-submodule-trailing-slash: submodule: warn about non-submodules Let ls-files strip trailing slashes in submodules' paths | 11 February 2009, 05:31:08 UTC |
6e5d7dd | Junio C Hamano | 11 February 2009, 05:30:52 UTC | Merge branch 'js/maint-1.6.0-path-normalize' * js/maint-1.6.0-path-normalize: Remove unused normalize_absolute_path() Test and fix normalize_path_copy() Fix GIT_CEILING_DIRECTORIES on Windows Move sanitary_path_copy() to path.c and rename it to normalize_path_copy() Make test-path-utils more robust against incorrect use | 11 February 2009, 05:30:52 UTC |
fd8475d | Junio C Hamano | 11 February 2009, 05:30:45 UTC | Merge branch 'maint' * maint: Clear the delta base cache during fast-import checkpoint | 11 February 2009, 05:30:45 UTC |
9b27ea9 | Junio C Hamano | 10 February 2009, 23:32:26 UTC | Merge branch 'maint-1.6.0' into maint * maint-1.6.0: Clear the delta base cache during fast-import checkpoint | 10 February 2009, 23:32:26 UTC |
3d20c63 | Shawn O. Pearce | 10 February 2009, 21:36:12 UTC | Clear the delta base cache during fast-import checkpoint Otherwise we may reuse the same memory address for a totally different "struct packed_git", and a previously cached object from the prior occupant might be returned when trying to unpack an object from the new pack. Found-by: Daniel Barkalow <barkalow@iabervon.org> Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 10 February 2009, 23:30:59 UTC |
f6b98e4 | Todd Zullinger | 08 February 2009, 23:12:43 UTC | git-web--browse: Fix check for /bin/start The previous check in git-web--browse for /bin/start used test -n /bin/start, which was always true. This lead to "start" being tried first in the browser list. On systems with upstart installed, "start" exists and might be in the PATH, but it makes a poor choice for a web browser. Instead, test that /bin/start exists and is executable. Signed-off-by: Todd Zullinger <tmz@pobox.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 09 February 2009, 08:06:36 UTC |
df487ba | Junio C Hamano | 09 February 2009, 06:07:53 UTC | Merge branch 'maint' * maint: gitweb: add $prevent_xss option to prevent XSS by repository content rev-list: fix showing distance when using --bisect-all | 09 February 2009, 06:07:53 UTC |
a9ee90d | Ted Pavlic | 06 February 2009, 16:05:38 UTC | completion: Get rid of tabbed indentation in comments. Replace with spaces. Signed-off-by: Ted Pavlic <ted@tedpavlic.com> Acked-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 09 February 2009, 06:07:49 UTC |
cf99578 | Ted Pavlic | 06 February 2009, 16:05:37 UTC | completion: Fix GIT_PS1_SHOWDIRTYSTATE to prevent unbound variable errors. Signed-off-by: Ted Pavlic <ted@tedpavlic.com> Acked-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 09 February 2009, 06:07:46 UTC |
7e1100e | Matt McCutchen | 08 February 2009, 00:00:09 UTC | gitweb: add $prevent_xss option to prevent XSS by repository content Add a gitweb configuration variable $prevent_xss that disables features to prevent content in repositories from launching cross-site scripting (XSS) attacks in the gitweb domain. Currently, this option makes gitweb ignore README.html (a better solution may be worked out in the future) and serve a blob_plain file of an untrusted type with "Content-Disposition: attachment", which tells the browser not to show the file at its original URL. The XSS prevention is currently off by default. Signed-off-by: Matt McCutchen <matt@mattmccutchen.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 09 February 2009, 05:51:25 UTC |
ffe4da1 | Santi Béjar | 07 February 2009, 22:21:49 UTC | doc/bundle: Use the more conventional suffix '.bundle' Although it does not matter in general it is handled different by "git clone", as it removes it to make the "humanish" name of the new repository. Signed-off-by: Santi Béjar <santi@agolina.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 09 February 2009, 05:42:17 UTC |
3ec7371 | Johannes Schindelin | 09 February 2009, 05:40:42 UTC | Add two extra tests for git rebase | 09 February 2009, 05:40:52 UTC |
3021faf | Sitaram Chamarty | 06 February 2009, 04:40:53 UTC | Documentation: clarify commits affected by gitk --merge Signed-off-by: Sitaram Chamarty <sitaramc@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 09 February 2009, 05:21:28 UTC |
9aad6cb | Stephan Beyer | 08 February 2009, 17:40:39 UTC | add -p: get rid of Git.pm warnings about unitialized values After invoking git add -p I always got the warnings: Use of uninitialized value $_[3] in exec at Git.pm line 1282. Use of uninitialized value $args[2] in join or string at Git.pm line 1264. A bisect showed that these warnings occur in a301973 "add -p: print errors in separate color" the first time. They can be reproduced by setting color.ui (or color.interactive) to "auto" and unsetting color.interactive.help and color.interactive.error. I am using Perl 5.10.0. The reason of the warning is that color.interactive.error defaults to color.interactive.help which defaults to nothing in the specific codepath. It defaults to 'red bold' some lines above which could lead to the wrong assumption that it always defaults to 'red bold' now. This patch lets it default to 'red bold', blowing the warnings away. Signed-off-by: Stephan Beyer <s-beyer@gmx.net> Acked-By: Thomas Rast <trast@student.ethz.ch> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 08 February 2009, 21:06:33 UTC |
6e46cc0 | Christian Couder | 08 February 2009, 14:54:47 UTC | rev-list: fix showing distance when using --bisect-all Before d467a52 ("Make '--decorate' set an explicit 'show_decorations' flag", Nov 3 2008), commit decorations were shown whenever they exist, and distances stored in them by "git rev-list --bisect-all" were automatically shown. d467a52 changed the rule so that commit decorations are not shown unless rev_info explicitly asks to, with its show_decorations bit, but forgot that the ones "git rev-list --bisect-all" adds need to be shown. This patch fixes this old breakage. Signed-off-by: Christian Couder <chriscool@tuxfamily.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 08 February 2009, 20:48:28 UTC |
7d48e9e | Marius Storm-Olsen | 08 February 2009, 14:34:31 UTC | Move mailmap documentation into separate file Include it directly from git-shortlog.txt, and refer to it from pretty-format.txt. Signed-off-by: Marius Storm-Olsen <marius@trolltech.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 08 February 2009, 20:38:08 UTC |
d20d654 | Marius Storm-Olsen | 08 February 2009, 14:34:30 UTC | Change current mailmap usage to do matching on both name and email of author/committer. Signed-off-by: Marius Storm-Olsen <marius@trolltech.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 08 February 2009, 20:36:54 UTC |
0925ce4 | Marius Storm-Olsen | 08 February 2009, 14:34:29 UTC | Add map_user() and clear_mailmap() to mailmap map_user() allows to lookup and replace both email and name of a user, based on a new style mailmap file. The possible mailmap definitions are now: proper_name <commit_email> # Old style <proper_email> <commit_email> # New style proper_name <proper_email> <commit_email> # New style proper_name <proper_email> commit_name <commit_email> # New style map_email() operates the same as before, with the exception that it also will to try to match on a name passed in through the name return buffer. clear_mailmap() is needed to now clear the more complex mailmap structure. Signed-off-by: Marius Storm-Olsen <marius@trolltech.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 08 February 2009, 20:36:38 UTC |
cfa1ee6 | Marius Storm-Olsen | 08 February 2009, 14:34:28 UTC | Add find_insert_index, insert_at_index and clear_func functions to string_list string_list_find_insert_index() and string_list_insert_at_index() enables you to see if an item is in the string_list, and to insert at the appropriate index in the list, if not there. This is usefull if you need to manipulate an existing item, if present, and insert a new item if not. Future mailmap code will use this construct to enable complex (old_name, old_email) -> (new_name, new_email) lookups. The string_list_clear_func() allows to call a custom cleanup function on each item in a string_list, which is useful is the util member points to a complex structure. Signed-off-by: Marius Storm-Olsen <marius@trolltech.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 08 February 2009, 20:36:31 UTC |
d551a48 | Marius Storm-Olsen | 08 February 2009, 14:34:27 UTC | Add mailmap.file as configurational option for mailmap location This allows us to augment the repo mailmap file, and to use mailmap files elsewhere than the repository root. Meaning that the entries in mailmap.file will override the entries in "./.mailmap", should they match. Signed-off-by: Marius Storm-Olsen <marius@trolltech.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 08 February 2009, 20:36:26 UTC |
ccb04f9 | Jakub Narebski | 06 February 2009, 09:12:41 UTC | gitweb: Better regexp for SHA-1 committag match Make SHA-1 regexp to be turned into hyperlink (the SHA-1 committag) to match word boundary at the beginning and the end. This way we reduce number of false matches, for example we now don't match 0x74a5cd01 which is hex decimal (for example memory address), but is not SHA-1. Suggested-by: Johannes Schindelin <Johannes.Schindelin@gmx.de> Signed-off-by: Jakub Narebski <jnareb@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 07 February 2009, 20:50:49 UTC |
496917b | Johannes Schindelin | 07 February 2009, 13:43:15 UTC | submodule: warn about non-submodules Earlier, when you called git submodule some/bogus/path Git would silently ignore the path, without warning the user about the likely mistake. Now it does. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 07 February 2009, 20:49:58 UTC |
f3670a5 | Johannes Schindelin | 07 February 2009, 13:43:03 UTC | Let ls-files strip trailing slashes in submodules' paths Tab completion makes it easy to add a trailing slash to a submodule path. As it is completely clear what the user actually wanted to say, be nice and strip that slash at the end. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 07 February 2009, 20:49:50 UTC |
f2a782b | Johannes Sixt | 07 February 2009, 15:08:31 UTC | Remove unused normalize_absolute_path() This function is now superseded by normalize_path_copy(). Signed-off-by: Johannes Sixt <j6t@kdbg.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 07 February 2009, 20:23:30 UTC |
f42302b | Johannes Sixt | 07 February 2009, 15:08:30 UTC | Test and fix normalize_path_copy() This changes the test-path-utils utility to invoke normalize_path_copy() instead of normalize_absolute_path() because the latter is about to be removed. The test cases in t0060 are adjusted in two regards: - normalize_path_copy() more often leaves a trailing slash in the result. This has no negative side effects because the new user of this function, longest_ancester_length(), already accounts for this behavior. - The function can fail. The tests uncover a flaw in normalize_path_copy(): If there are sufficiently many '..' path components so that the root is reached, such as in "/d1/s1/../../d2", then the leading slash was lost. This manifested itself that (assuming there is a repository at /tmp/foo) $ git add /d1/../tmp/foo/some-file reported 'pathspec is outside repository'. This is now fixed. Moreover, the test case descriptions of t0060 now include the test data and expected outcome. Signed-off-by: Johannes Sixt <j6t@kdbg.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 07 February 2009, 20:23:30 UTC |
43a7ddb | René Scharfe | 07 February 2009, 15:08:29 UTC | Fix GIT_CEILING_DIRECTORIES on Windows Using git with GIT_CEILING_DIRECTORIES crashed on Windows due to a failed assertion in normalize_absolute_path(): This function expects absolute paths to start with a slash, while on Windows they can start with a drive letter or a backslash. This fixes it by using the alternative, normalize_path_copy() instead, which can handle Windows-style paths just fine. Secondly, the portability macro PATH_SEP is used instead of expecting colons to be used as path list delimiter. The test script t1504 is also changed to help MSYS's bash recognize some program arguments as path list. (MSYS's bash must translate POSIX-style path lists to Windows-style path lists, and the heuristic did not catch some cases.) Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx> Signed-off-by: Johannes Sixt <j6t@kdbg.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 07 February 2009, 20:23:29 UTC |
f3cad0a | Johannes Sixt | 07 February 2009, 15:08:28 UTC | Move sanitary_path_copy() to path.c and rename it to normalize_path_copy() This function and normalize_absolute_path() do almost the same thing. The former already works on Windows, but the latter crashes. In subsequent changes we will remove normalize_absolute_path(). Here we make the replacement function reusable. On the way we rename it to reflect that it does some path normalization. Apart from that this is only moving around code. Signed-off-by: Johannes Sixt <j6t@kdbg.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 07 February 2009, 20:23:29 UTC |
2cd85c4 | Johannes Sixt | 07 February 2009, 15:08:27 UTC | Make test-path-utils more robust against incorrect use Previously, this test utility happily returned with exit code 0 if garbage was thrown at it. Now it reports failure if an unknown function name was given on the command line. Signed-off-by: Johannes Sixt <j6t@kdbg.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 07 February 2009, 20:23:29 UTC |
d3bee16 | Lars Hjemli | 25 January 2009, 00:52:05 UTC | tree.c: allow read_tree_recursive() to traverse gitlink entries When the callback function invoked from read_tree_recursive() returns the value `READ_TREE_RECURSIVE` for a gitlink entry, the traversal will now continue into the tree connected to the gitlinked commit. This functionality can be used to allow inter-repository operations, but since the current users of read_tree_recursive() does not yet support such operations, they have been modified where necessary to make sure that they never return READ_TREE_RECURSIVE for gitlink entries (hence no change in behaviour should be introduces by this patch alone). Signed-off-by: Lars Hjemli <hjemli@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 07 February 2009, 20:14:34 UTC |
621f1b4 | Junio C Hamano | 07 February 2009, 19:06:34 UTC | GIT 1.6.2-rc0 Signed-off-by: Junio C Hamano <gitster@pobox.com> | 07 February 2009, 19:18:40 UTC |
c19923a | Junio C Hamano | 07 February 2009, 19:10:16 UTC | Merge branch 'tr/add-p-single' * tr/add-p-single: add -p: import Term::ReadKey with 'require' add -p: print errors in separate color add -p: prompt for single characters | 07 February 2009, 19:10:16 UTC |
df4364a | Junio C Hamano | 07 February 2009, 19:09:48 UTC | Merge branch 'js/filter-branch-submodule' * js/filter-branch-submodule: filter-branch: do not consider diverging submodules a 'dirty worktree' filter-branch: Fix fatal error on bare repositories | 07 February 2009, 19:09:48 UTC |
7de265a | Junio C Hamano | 07 February 2009, 18:44:25 UTC | Merge branch 'maint' * maint: GIT 1.6.1.3 Conflicts: GIT-VERSION-GEN RelNotes | 07 February 2009, 18:44:25 UTC |
7851386 | Alexandre Julliard | 07 February 2009, 13:24:54 UTC | emacs: Remove the no longer maintained vc-git package. vc-git is distributed with Emacs since version 22.2, and is maintained in the Emacs CVS tree. This file is obsolete and causes trouble for people who want to add contrib/emacs to their load-path. Signed-off-by: Alexandre Julliard <julliard@winehq.org> | 07 February 2009, 14:14:27 UTC |
5a7b3bf | Alexandre Julliard | 07 February 2009, 13:21:58 UTC | git.el: Add some notes about Emacs versions compatibility. Signed-off-by: Alexandre Julliard <julliard@winehq.org> | 07 February 2009, 14:14:22 UTC |
6c4f70d | Alexandre Julliard | 07 February 2009, 13:01:26 UTC | git.el: Use integer instead of character constants in case statement. This is for compatibility with XEmacs. Reported by Vassili Karpov. Signed-off-by: Alexandre Julliard <julliard@winehq.org> | 07 February 2009, 13:01:44 UTC |
efd49f5 | Alexandre Julliard | 27 January 2009, 10:59:54 UTC | git.el: Set a regexp for paragraph-separate in log-edit mode. This allows using fill-paragraph on the log message without interference from the various header fields. Signed-off-by: Alexandre Julliard <julliard@winehq.org> | 07 February 2009, 12:48:54 UTC |
a7da5c4 | Alexandre Julliard | 23 November 2008, 15:12:45 UTC | git.el: Make git-run-command-region display the error if any. This makes it easier to figure out why a commit has failed. Signed-off-by: Alexandre Julliard <julliard@winehq.org> | 07 February 2009, 12:48:54 UTC |
ab69e3e | Alexandre Julliard | 23 November 2008, 13:34:48 UTC | git.el: Add commands for cherry-pick and revert. Support for cherry-picking and reverting commits, with automatic formatting of the commit log message. Bound to C-c C-p and C-c C-v respectively. Signed-off-by: Alexandre Julliard <julliard@winehq.org> | 07 February 2009, 12:48:54 UTC |