summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2011-05-15read_sha1_file(): allow selective bypassing of replacement mechanismLibravatar Junio C Hamano2-5/+12
The way "object replacement" mechanism was tucked to the read_sha1_file() interface was suboptimal in a couple of ways: - Callers that want it to die with useful diagnosis upon seeing a corrupt object does not have a way to say that they do not want any object replacement. - Callers who do not want it to die but want to handle the errors themselves are told to arrange to call read_object(), but the function does not use the replacement mechanism, and also it is a file scope static function that not many callers can call to begin with. This adds a read_sha1_file_extended() that takes a set of flags; the callers of read_sha1_file() passes a flag READ_SHA1_FILE_REPLACE to ask for object replacement mechanism to kick in. Later, we could add another flag bit to tell the function to return an error instead of dying and then remove the misguided "call read_object() yourself". Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-05-15inline lookup_replace_object() callsLibravatar Junio C Hamano3-4/+14
In a repository without object replacement, lookup_replace_object() should be a no-op. Check the flag "read_replace_refs" on the side of the caller, and bypess a function call when we know we are not dealing with replacement. Also, even when we are set up to replace objects, if we do not find any replacement defined, flip that flag off to avoid function call overhead for all the later object accesses. As this change the semantics of the flag from "do we need read the replacement definition?" to "do we need to check with the lookup table?" the flag needs to be renamed later to something saner, e.g. "use_replace", when the codebase is calmer, but not now. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-05-15read_sha1_file(): get rid of read_sha1_file_repl() madnessLibravatar Junio C Hamano4-17/+9
Most callers want to silently get a replacement object, and they do not care what the real name of the replacement object is. Worse yet, no sane interface to return the underlying object without replacement is provided. Remove the function and make only the few callers that want the name of the replacement object find it themselves. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-05-15t6050: make sure we test not just commit replacementLibravatar Junio C Hamano1-2/+16
The replacement mechanism should affect all types of objects not just commits, so make sure it deals with at least a blob. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-05-15Declare lookup_replace_object() in cache.h, not in commit.hLibravatar Junio C Hamano2-2/+1
The declaration is misplaced as the replace API is supposed to affect not just commits, but all types of objects. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-05-06Update draft release notes to 1.7.6Libravatar Junio C Hamano1-3/+29
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-05-06Merge branch 'jn/run-command-error-failure'Libravatar Junio C Hamano3-6/+34
* jn/run-command-error-failure: run-command: handle short writes and EINTR in die_child tests: check error message from run_command
2011-05-06Merge branch 'js/info-man-path'Libravatar Junio C Hamano3-5/+21
* js/info-man-path: Documentation: clarify meaning of --html-path, --man-path, and --info-path git: add --info-path and --man-path options Conflicts: Makefile
2011-05-06Merge branch 'im/hashcmp-optim'Libravatar Junio C Hamano1-4/+14
* im/hashcmp-optim: hashcmp(): inline memcmp() by hand to optimize
2011-05-06Merge branch 'jk/merge-one-file-working-tree'Libravatar Junio C Hamano2-1/+106
* jk/merge-one-file-working-tree: merge-one-file: fix broken merges with alternate work trees add tests for merge-index / merge-one-file
2011-05-06Merge branch 'jc/fix-diff-files-unmerged'Libravatar Junio C Hamano16-36/+120
* jc/fix-diff-files-unmerged: diff-files: show unmerged entries correctly diff: remove often unused parameters from diff_unmerge() diff.c: return filepair from diff_unmerge() test: use $_z40 from test-lib
2011-05-06Merge branch 'cj/p4merge'Libravatar Junio C Hamano1-6/+3
* cj/p4merge: Pass empty file to p4merge where no base is suitable.
2011-05-06Merge branch 'gr/cvsimport-alternative-cvspass-location'Libravatar Junio C Hamano1-12/+41
* gr/cvsimport-alternative-cvspass-location: Look for password in both CVS and CVSNT password files.
2011-05-06Merge branch 'sg/completion-cleanup'Libravatar Junio C Hamano1-161/+60
* sg/completion-cleanup: completion: remove unnecessary _get_comp_words_by_ref() invocations completion: don't modify the $cur variable in completion functions
2011-05-06Merge branch 'js/blame-parsename'Libravatar Junio C Hamano3-3/+14
* js/blame-parsename: t/annotate-tests: Use echo & cat instead of sed blame: tolerate bogus e-mail addresses a bit better
2011-05-06Merge branch 'jk/format-patch-quote-special-in-from'Libravatar Junio C Hamano2-1/+103
* jk/format-patch-quote-special-in-from: pretty: quote rfc822 specials in email addresses Conflicts: pretty.c t/t4014-format-patch.sh
2011-05-06Merge branch 'nd/struct-pathspec'Libravatar Junio C Hamano15-172/+151
* nd/struct-pathspec: pathspec: rename per-item field has_wildcard to use_wildcard Improve tree_entry_interesting() handling code Convert read_tree{,_recursive} to support struct pathspec Reimplement read_tree_recursive() using tree_entry_interesting()
2011-05-06Merge branch 'aw/maint-rebase-i-p-no-ff'Libravatar Junio C Hamano2-2/+32
* aw/maint-rebase-i-p-no-ff: git-rebase--interactive.sh: preserve-merges fails on merges created with no-ff Conflicts: git-rebase--interactive.sh
2011-05-06Merge branch 'mg/alias-expose-prefix'Libravatar Junio C Hamano3-1/+32
* mg/alias-expose-prefix: handle_alias: provide GIT_PREFIX to !alias t1020: test !alias in subdirectory
2011-05-06Merge branch 'mg/diff-uiconfig-doc'Libravatar Junio C Hamano2-12/+30
* mg/diff-uiconfig-doc: config.txt,diff-options.txt: porcelain vs. plumbing for color.diff
2011-05-06Merge branch 'maint'Libravatar Junio C Hamano1-1/+1
* maint: Remove duplicated "is a"
2011-05-05Remove duplicated "is a"Libravatar João Britto1-1/+1
Signed-off-by: João Britto <jabcalves@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-05-05Merge branch 'maint'Libravatar Junio C Hamano3-5/+6
* maint: t3701: fix here document git-fast-import.txt: --relative-marks takes no parameter shell: add missing initialization of argv0_path
2011-05-05t3701: fix here documentLibravatar Junio C Hamano1-3/+2
A broken here-document was not caught because end of file is taken by an implicit end of the here document (POSIX does not seem to say it is an error to lack the delimiter), and everything in the test just turned into a single "cat into a file". Noticed-by: Kacper Kornet <draenog@pld-linux.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-05-05git-fast-import.txt: --relative-marks takes no parameterLibravatar Michael J Gruber1-2/+2
Remove spurious "=" after --relative-marks. Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-05-05shell: add missing initialization of argv0_pathLibravatar Dima Sharov1-0/+2
According to c6dfb39 (remote-curl: add missing initialization of argv0_path, 2009-10-13), stand-alone programs (non-builtins) must call git_extract_argv0_path(argv[0]) in order to help builds that derive the installation prefix at runtime. Without this call, the program segfaults (or raises an assertion failure). Signed-off-by: Dima Sharov <git.avalakvista@gmail.com> Acked-by: Johannes Sixt <j6t@kdbg.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-05-05t/annotate-tests: Use echo & cat instead of sedLibravatar Brian Gernhardt1-1/+2
The use of the sed command "1i No robots allowed" caused the version of sed in OS X to die with sed: 1: "1i "No robots allowed"\n": command i expects \ followed by text Since this command was just trying to add a single line to the beginning of the file, do the same with "echo" followed by "cat". Unbreaks t8001 and t8002 on OS X 10.6.7 Signed-off-by: Brian Gernhardt <brian@gernhardtsoftware.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-05-04Update draft release notes to 1.7.6Libravatar Junio C Hamano1-27/+13
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-05-04Merge branch 'ml/test-readme'Libravatar Junio C Hamano1-8/+9
* ml/test-readme: t/README: unify documentation of test function args
2011-05-04Merge branch 'ft/gitweb-tar-with-gzip-n'Libravatar Junio C Hamano1-1/+1
* ft/gitweb-tar-with-gzip-n: gitweb: supply '-n' to gzip for identical output
2011-05-04Merge branch 'mg/rev-list-count-cherry'Libravatar Junio C Hamano4-3/+40
* mg/rev-list-count-cherry: rev-list --count: separate count for --cherry-mark
2011-05-04Merge branch 'ss/doc-svn'Libravatar Junio C Hamano1-9/+7
* ss/doc-svn: remove noise and inaccuracies from git-svn docs
2011-05-04Merge branch 'jn/format-patch-doc'Libravatar Junio C Hamano4-195/+229
* jn/format-patch-doc: Documentation/format-patch: suggest Toggle Word Wrap add-on for Thunderbird Documentation: publicize hints for sending patches with GMail Documentation: publicize KMail hints for sending patches inline Documentation: hints for sending patches inline with Thunderbird Documentation: explain how to check for patch corruption
2011-05-04Merge branch 'vr/merge-base-doc'Libravatar Junio C Hamano2-14/+23
* vr/merge-base-doc: Restructure documentation for git-merge-base. Documentation: update to git-merge-base --octopus
2011-05-04Merge branch 'ss/cherry-pick-x-doc'Libravatar Junio C Hamano1-3/+4
* ss/cherry-pick-x-doc: doc: Clarify that "cherry-pick -x" does not use "git notes"
2011-05-04Merge branch 'jn/maint-format-patch-doc'Libravatar Junio C Hamano1-0/+58
* jn/maint-format-patch-doc: Documentation: describe the format of messages with inline patches
2011-05-04Merge branch 'jk/format-patch-multiline-header'Libravatar Junio C Hamano2-0/+24
* jk/format-patch-multiline-header: format-patch: wrap email addresses after long names
2011-05-04Merge branch 'jm/mergetool-submodules'Libravatar Junio C Hamano2-9/+371
* jm/mergetool-submodules: mergetool: Teach about submodules
2011-05-04Sync with 1.7.5.1Libravatar Junio C Hamano3-1/+37
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-05-04Git 1.7.5.1Libravatar Junio C Hamano3-2/+36
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-05-04Merge branch 'jh/dirstat' into maintLibravatar Junio C Hamano8-12/+81
* jh/dirstat: --dirstat: In case of renames, use target filename instead of source filename Teach --dirstat not to completely ignore rearranged lines within a file --dirstat-by-file: Make it faster and more correct --dirstat: Describe non-obvious differences relative to --stat or regular diff
2011-05-04Merge branch 'sp/maint-clear-postfields' into maintLibravatar Junio C Hamano1-0/+1
* sp/maint-clear-postfields: http: clear POSTFIELDS when initializing a slot
2011-05-04Merge branch 'jk/maint-stash-oob' into maintLibravatar Junio C Hamano2-16/+12
* jk/maint-stash-oob: stash: fix false positive in the invalid ref test. stash: fix accidental apply of non-existent stashes Conflicts: t/t3903-stash.sh
2011-05-04Merge branch 'jk/maint-upload-pack-shallow' into maintLibravatar Junio C Hamano1-12/+11
* jk/maint-upload-pack-shallow: upload-pack: start pack-objects before async rev-list
2011-05-04Merge branch 'dm/stash-k-i-p' into maintLibravatar Junio C Hamano3-4/+25
* dm/stash-k-i-p: stash: ensure --no-keep-index and --patch can be used in any order stash: add two more tests for --no-keep-index
2011-05-04Merge branch 'jc/pack-objects-bigfile' into maintLibravatar Junio C Hamano6-9/+14
* jc/pack-objects-bigfile: Teach core.bigfilethreashold to pack-objects
2011-05-04Merge branch 'mg/reflog-with-options' into maintLibravatar Junio C Hamano2-13/+35
* mg/reflog-with-options: reflog: fix overriding of command line options t/t1411: test reflog with formats builtin/log.c: separate default and setup of cmd_log_init()
2011-05-04Merge branch 'jk/stash-loosen-safety' into maintLibravatar Junio C Hamano2-7/+17
* jk/stash-loosen-safety: stash: drop dirty worktree check on apply
2011-05-04Merge branch 'ar/clean-rmdir-empty' into maintLibravatar Junio C Hamano2-1/+8
* ar/clean-rmdir-empty: clean: unreadable directory may still be rmdir-able if it is empty
2011-05-04Merge branch 'mg/sha1-path-advise' into maintLibravatar Junio C Hamano2-9/+19
* mg/sha1-path-advise: sha1_name: Suggest commit:./file for path in subdir t1506: factor out test for "Did you mean..."