summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2011-12-16grep: enable threading with -p and -W using lazy attribute lookupLibravatar Thomas Rast3-33/+63
Lazily load the userdiff attributes in match_funcname(). Use a separate mutex around this loading to protect the (not thread-safe) attributes machinery. This lets us re-enable threading with -p and -W while reducing the overhead caused by looking up attributes. Signed-off-by: Thomas Rast <trast@student.ethz.ch> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-12-12grep: load funcname patterns for -WLibravatar Thomas Rast2-3/+18
git-grep avoids loading the funcname patterns unless they are needed. ba8ea74 (grep: add option to show whole function as context, 2011-08-01) forgot to extend this test also to the new funcbody feature. Do so. The catch is that we also have to disable threading when using userdiff, as explained in grep_threads_ok(). So we must be careful to introduce the same test there. Signed-off-by: Thomas Rast <trast@student.ethz.ch> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-12-09Update draft release notes for 1.7.9Libravatar Junio C Hamano1-1/+36
The first two of more important topics slated for 1.7.9 have been merged. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-12-09Merge branch 'sg/complete-refs'Libravatar Junio C Hamano1-91/+110
* sg/complete-refs: completion: remove broken dead code from __git_heads() and __git_tags() completion: fast initial completion for config 'remote.*.fetch' value completion: improve ls-remote output filtering in __git_refs_remotes() completion: query only refs/heads/ in __git_refs_remotes() completion: support full refs from remote repositories completion: improve ls-remote output filtering in __git_refs() completion: make refs completion consistent for local and remote repos completion: optimize refs completion completion: document __gitcomp() Conflicts: contrib/completion/git-completion.bash
2011-12-09Merge branch 'nd/resolve-ref'Libravatar Junio C Hamano17-59/+98
* nd/resolve-ref: Copy resolve_ref() return value for longer use Convert many resolve_ref() calls to read_ref*() and ref_exists() Conflicts: builtin/fmt-merge-msg.c builtin/merge.c refs.c
2011-12-09Merge branch 'jc/pull-signed-tag'Libravatar Junio C Hamano83-406/+825
* jc/pull-signed-tag: commit-tree: teach -m/-F options to read logs from elsewhere commit-tree: update the command line parsing commit: teach --amend to carry forward extra headers merge: force edit and no-ff mode when merging a tag object commit: copy merged signed tags to headers of merge commit merge: record tag objects without peeling in MERGE_HEAD merge: make usage of commit->util more extensible fmt-merge-msg: Add contents of merged tag in the merge message fmt-merge-msg: package options into a structure fmt-merge-msg: avoid early returns refs DWIMmery: use the same rule for both "git fetch" and others fetch: allow "git fetch $there v1.0" to fetch a tag merge: notice local merging of tags and keep it unwrapped fetch: do not store peeled tag object names in FETCH_HEAD Split GPG interface into its own helper library Conflicts: builtin/fmt-merge-msg.c builtin/merge.c
2011-12-09Merge branch 'jc/request-pull-show-head-4'Libravatar Junio C Hamano12-59/+313
* jc/request-pull-show-head-4: request-pull: use the annotated tag contents fmt-merge-msg.c: Fix an "dubious one-bit signed bitfield" sparse error environment.c: Fix an sparse "symbol not declared" warning builtin/log.c: Fix an "Using plain integer as NULL pointer" warning fmt-merge-msg: use branch.$name.description request-pull: use the branch description request-pull: state what commit to expect request-pull: modernize style branch: teach --edit-description option format-patch: use branch description in cover letter branch: add read_branch_desc() helper function Conflicts: builtin/branch.c
2011-12-09Merge branch 'ab/pull-rebase-config'Libravatar Junio C Hamano4-7/+42
* ab/pull-rebase-config: pull: introduce a pull.rebase option to enable --rebase
2011-12-09Merge branch 'rs/allocate-cache-entry-individually'Libravatar Junio C Hamano2-53/+33
* rs/allocate-cache-entry-individually: cache.h: put single NUL at end of struct cache_entry read-cache.c: allocate index entries individually Conflicts: read-cache.c
2011-12-09Merge branch 'maint'Libravatar Junio C Hamano4-15/+5
* maint: am: don't persist keepcr flag mingw: give waitpid the correct signature git symbolic-ref: documentation fix
2011-12-09Merge branch 'maint-1.7.7' into maintLibravatar Junio C Hamano4-15/+5
* maint-1.7.7: am: don't persist keepcr flag mingw: give waitpid the correct signature git symbolic-ref: documentation fix
2011-12-09am: don't persist keepcr flagLibravatar Martin von Zweigbergk1-7/+0
The keepcr flag is only used in the split_patches function, which is only called before a patch application has to stopped for user input, not after resuming. It is therefore unnecessary to persist the flag. This seems to have been the case since it was introduced in ad2c928 (git-am: Add command line parameter `--keep-cr` passing it to git-mailsplit, 2010-02-27). Signed-off-by: Martin von Zweigbergk <martin.von.zweigbergk@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-12-09mingw: give waitpid the correct signatureLibravatar Erik Faye-Lund2-2/+2
POSIX says that last parameter to waitpid should be 'int', so let's make it so. Signed-off-by: Erik Faye-Lund <kusmabite@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-12-08git symbolic-ref: documentation fixLibravatar Michael Haggerty1-6/+3
The old "git symbolic-ref" manpage seemed to imply in one place that symlinks are still the default way to represent symbolic references and in another that symlinks are deprecated. Fix the text and shorten the justification for the change of implementation. Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-12-05Merge branch 'master' of git://bogomips.org/git-svnLibravatar Junio C Hamano1-1/+1
* 'master' of git://bogomips.org/git-svn: git-svn.perl: close the edit for propedits even with no mods
2011-12-05Copy resolve_ref() return value for longer useLibravatar Nguyễn Thái Ngọc Duy8-28/+66
resolve_ref() may return a pointer to a static buffer. Callers that use this value longer than a couple of statements should copy the value to avoid some hidden resolve_ref() call that may change the static buffer's value. The bug found by Tony Wang <wwwjfy@gmail.com> in builtin/merge.c demonstrates this. The first call is in cmd_merge() branch = resolve_ref("HEAD", head_sha1, 0, &flag); Then deep in lookup_commit_or_die() a few lines after, resolve_ref() may be called again and destroy "branch". lookup_commit_or_die lookup_commit_reference lookup_commit_reference_gently parse_object lookup_replace_object do_lookup_replace_object prepare_replace_object for_each_replace_ref do_for_each_ref get_loose_refs get_ref_dir get_ref_dir resolve_ref All call sites are checked and made sure that xstrdup() is called if the value should be saved. Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-12-05Kick-off the 1.7.9 cycleLibravatar Junio C Hamano3-2/+29
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-12-05Merge branch 'jk/refresh-porcelain-output'Libravatar Junio C Hamano1-10/+32
* jk/refresh-porcelain-output: refresh_index: make porcelain output more specific refresh_index: rename format variables read-cache: let refresh_cache_ent pass up changed flags
2011-12-05Merge branch 'gh/userdiff-matlab'Libravatar Junio C Hamano7-1/+39
* gh/userdiff-matlab: Add built-in diff patterns for MATLAB code
2011-12-05Merge branch 'nd/maint-ignore-exclude'Libravatar Junio C Hamano2-2/+2
* nd/maint-ignore-exclude: checkout,merge: loosen overwriting untracked file check based on info/exclude
2011-12-05Merge branch 'vr/git-merge-default-to-upstream'Libravatar Junio C Hamano1-3/+6
* vr/git-merge-default-to-upstream: Show error for 'git merge' with unset merge.defaultToUpstream
2011-12-05Merge branch 'jc/maint-pack-object-cycle'Libravatar Junio C Hamano1-12/+43
* jc/maint-pack-object-cycle: pack-object: tolerate broken packs that have duplicated objects Conflicts: builtin/pack-objects.c
2011-12-05Merge branch 'jc/index-pack-reject-dups'Libravatar Junio C Hamano4-2/+11
* jc/index-pack-reject-dups: receive-pack, fetch-pack: reject bogus pack that records objects twice
2011-12-05Merge branch 'vr/msvc'Libravatar Junio C Hamano14-19/+7
* vr/msvc: MSVC: Remove unneeded header stubs Compile fix for MSVC: Include <io.h> Compile fix for MSVC: Do not include sys/resources.h
2011-12-05Merge branch 'na/strtoimax'Libravatar Junio C Hamano4-13/+46
* na/strtoimax: Support sizes >=2G in various config options accepting 'g' sizes. Compatibility: declare strtoimax() under NO_STRTOUMAX Add strtoimax() compatibility function.
2011-12-05Merge branch 'ab/clang-lints'Libravatar Junio C Hamano3-5/+2
* ab/clang-lints: cast variable in call to free() in builtin/diff.c and submodule.c apply: get rid of useless x < 0 comparison on a size_t type
2011-12-05Merge branch 'nd/prune-progress'Libravatar Junio C Hamano5-17/+60
* nd/prune-progress: reachable: per-object progress prune: handle --progress/no-progress prune: show progress while marking reachable objects
2011-12-05Merge branch 'nd/fsck-progress'Libravatar Junio C Hamano4-27/+96
* nd/fsck-progress: fsck: print progress fsck: avoid reading every object twice verify_packfile(): check as many object as possible in a pack fsck: return error code when verify_pack() goes wrong
2011-12-05Merge branch 'mf/curl-select-fdset'Libravatar Junio C Hamano2-27/+21
* mf/curl-select-fdset: http: drop "local" member from request struct http.c: Rely on select instead of tracking whether data was received http.c: Use timeout suggested by curl instead of fixed 50ms timeout http.c: Use curl_multi_fdset to select on curl fds instead of just sleeping
2011-12-05Merge branch 'nd/misc-cleanups'Libravatar Junio C Hamano10-95/+112
* nd/misc-cleanups: unpack_object_header_buffer(): clear the size field upon error tree_entry_interesting: make use of local pointer "item" tree_entry_interesting(): give meaningful names to return values read_directory_recursive: reduce one indentation level get_tree_entry(): do not call find_tree_entry() on an empty tree tree-walk.c: do not leak internal structure in tree_entry_len()
2011-12-05Merge branch 'maint'Libravatar Junio C Hamano2-2/+1
* maint: stripspace: fix outdated comment Add MYMETA.yml to perl/.gitignore
2011-12-05Merge branch 'maint-1.7.7' into maintLibravatar Junio C Hamano2-2/+1
* maint-1.7.7: stripspace: fix outdated comment Add MYMETA.yml to perl/.gitignore
2011-12-05Merge branch 'maint-1.7.6' into maint-1.7.7Libravatar Junio C Hamano2-2/+1
* maint-1.7.6: stripspace: fix outdated comment Add MYMETA.yml to perl/.gitignore
2011-12-05stripspace: fix outdated commentLibravatar Jeff King1-2/+0
The comment on top of stripspace() claims that the buffer will no longer be NUL-terminated. However, this has not been the case at least since the move to using strbuf in 2007. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-12-05git-p4: introduce skipSubmitEditLibravatar Pete Wyckoff3-24/+136
Add a configuration variable to skip invoking the editor in the submit path. The existing variable skipSubmitEditCheck continues to make sure that the submit template was indeed modified by the editor; but, it is not considered if skipSubmitEdit is true. Reported-by: Loren A. Linden Levy <lindenle@gmail.com> Acked-by: Luke Diamand <luke@diamand.org> Signed-off-by: Pete Wyckoff <pw@padd.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-12-05Add MYMETA.yml to perl/.gitignoreLibravatar Sebastian Morr1-0/+1
This file is auto-generated by newer versions of ExtUtils::MakeMaker (presumably starting with the version shipping with Perl 5.14). It just contains extra information about the environment and arguments to the Makefile-building process, and should be ignored. Signed-off-by: Sebastian Morr <sebastian@morr.cc> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-12-05Merge branch 'js/merge-edit-option'Libravatar Junio C Hamano1-1/+0
* js/merge-edit-option: Documentation: fix formatting error in merge-options.txt
2011-12-05Documentation: fix formatting error in merge-options.txtLibravatar Jack Nagel1-1/+0
The first paragraph inside of a list item does not need a preceding line consisting of a single '+', and in fact this causes the text to be misrendered. Fix it. Signed-off-by: Jack Nagel <jacknagel@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-12-02Git 1.7.8Libravatar Junio C Hamano3-11/+8
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-12-01git-svn.perl: close the edit for propedits even with no modsLibravatar Steven Walter1-1/+1
It's legitimate to update the mergeinfo property without actually changing any files. This can happen when changes are backported to a branch, and then that branch is merged back into mainline. We still want to record the updated mergeinfo for book-keeping. Signed-off-by: Steven Walter <stevenrwalter@gmail.com> Acked-by: Eric Wong <normalperson@yhbt.net>
2011-11-28Git 1.7.8-rc4Libravatar Junio C Hamano2-2/+2
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-11-28checkout,merge: loosen overwriting untracked file check based on info/excludeLibravatar Nguyễn Thái Ngọc Duy2-2/+2
Back in 1127148 (Loosen "working file will be lost" check in Porcelain-ish - 2006-12-04), git-checkout.sh learned to quietly overwrite ignored files. Howver the code only took .gitignore files into account. Standard ignored files include all specified in .gitignore files in working directory _and_ $GIT_DIR/info/exclude. This patch makes sure ignored files in info/exclude can also be overwritten automatically in the spirit of the original patch. Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-11-23builtin-reset: Documentation updateLibravatar Vincent van Ravesteijn1-4/+4
The second mode of 'git reset' is defined by the --patch option, while the third mode is defined by the <mode> option. Hence, these options are mandatory in the description of the individual modes. Signed-off-by: Vincent van Ravesteijn <vfr@lyx.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-11-23builtin-branch: Fix crash on invalid use of --forceLibravatar Vincent van Ravesteijn1-2/+2
The option --force should not put us in 'create branch' mode. The fact that this option is only valid in 'create branch' mode is already caught by the the next 'if' in which we assure that we are in the correct mode. Without this patch, "git branch -f" without any other argument ends up calling create_branch without any branch name. Signed-off-by: Vincent van Ravesteijn <vfr@lyx.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-11-23revert --abort: do not leave behind useless sequencer-old directoryLibravatar Jonathan Nieder2-0/+9
The "git cherry-pick --abort" command currently renames the .git/sequencer directory to .git/sequencer-old instead of removing it on success due to an accident. cherry-pick --abort is designed to work in three steps: 1) find which commit to roll back to 2) call "git reset --merge <commit>" to move to that commit 3) remove the .git/sequencer directory But the careless author forgot step 3 entirely. The only reason the command worked anyway is that "git reset --merge <commit>" renames the .git/sequencer directory as a secondary effect --- after moving to <commit>, or so the logic goes, it is unlikely but possible that the caller of git reset wants to continue the series of cherry-picks that was in progress, so git renames the sequencer state to .git/sequencer-old to be helpful while allowing the cherry-pick to be resumed if the caller did not want to end the sequence after all. By running "git cherry-pick --abort", the operator has clearly indicated that she is not planning to continue cherry-picking. Remove the (renamed) .git/sequencer directory as intended all along. Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-11-23Fix revert --abort on WindowsLibravatar Johannes Sixt1-2/+2
On Windows, it is not possible to rename or remove a directory that has open files. 'revert --abort' renamed .git/sequencer when it still had .git/sequencer/head open. Close the file as early as possible to allow the rename operation on Windows. Signed-off-by: Johannes Sixt <j6t@kdbg.org> Acked-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-11-23revert: do not pass non-literal string as format to git_path()Libravatar Nguyễn Thái Ngọc Duy1-1/+1
This fixes the following warning. CC builtin/revert.o builtin/revert.c: In function ‘write_cherry_pick_head’: builtin/revert.c:311: warning: format not a string literal and no format arguments Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-11-22Update 1.7.8 draft release notes in preparation for rc4Libravatar Junio C Hamano1-1/+1
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-11-22Merge branch 'jn/revert-quit'Libravatar Junio C Hamano10-54/+314
* jn/revert-quit: revert: remove --reset compatibility option revert: introduce --abort to cancel a failed cherry-pick revert: write REVERT_HEAD pseudoref during conflicted revert revert: improve error message for cherry-pick during cherry-pick revert: rearrange pick_revisions() for clarity revert: rename --reset option to --quit
2011-11-22revert: remove --reset compatibility optionLibravatar Jonathan Nieder2-5/+2
Remove the "git cherry-pick --reset" option, which has a different preferred spelling nowadays ("--quit"). Luckily the old --reset name was not around long enough for anyone to get used to it. Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>