summaryrefslogtreecommitdiff
path: root/t
AgeCommit message (Collapse)AuthorFilesLines
2010-07-02Try normalizing files to avoid delete/modify conflicts when mergingLibravatar Eyvind Bernhardsen1-1/+1
If a file is modified due to normalization on one branch, and deleted on another, a merge of the two branches will result in a delete/modify conflict for that file even if it is otherwise unchanged. Try to avoid the conflict by normalizing and comparing the "base" file and the modified file when their sha1s differ. If they compare equal, the file is considered unmodified and is deleted. Signed-off-by: Eyvind Bernhardsen <eyvind.bernhardsen@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-07-02Avoid conflicts when merging branches with mixed normalizationLibravatar Eyvind Bernhardsen1-0/+64
Currently, merging across changes in line ending normalization is painful since files containing CRLF will conflict with normalized files, even if the only difference between the two versions is the line endings. Additionally, any "real" merge conflicts that exist are obscured because every line in the file has a conflict. Assume you start out with a repo that has a lot of text files with CRLF checked in (A): o---C / \ A---B---D B: Add "* text=auto" to .gitattributes and normalize all files to LF-only C: Modify some of the text files D: Try to merge C You will get a ridiculous number of LF/CRLF conflicts when trying to merge C into D, since the repository contents for C are "wrong" wrt the new .gitattributes file. Fix ll-merge so that the "base", "theirs" and "ours" stages are passed through convert_to_worktree() and convert_to_git() before a three-way merge. This ensures that all three stages are normalized in the same way, removing from consideration differences that are only due to normalization. This feature is optional for now since it changes a low-level mechanism and is not necessary for the majority of users. The "merge.renormalize" config variable enables it. Signed-off-by: Eyvind Bernhardsen <eyvind.bernhardsen@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-06-27Merge branch 'cp/textconv-cat-file'Libravatar Junio C Hamano1-0/+70
* cp/textconv-cat-file: git-cat-file.txt: Document --textconv t/t8007: test textconv support for cat-file textconv: support for cat_file sha1_name: add get_sha1_with_context()
2010-06-27Merge branch 'tr/send-email-8bit'Libravatar Junio C Hamano1-0/+77
* tr/send-email-8bit: send-email: ask about and declare 8bit mails
2010-06-27Merge branch 'js/maint-am-rebase-invalid-author'Libravatar Junio C Hamano1-2/+7
* js/maint-am-rebase-invalid-author: am: use get_author_ident_from_commit instead of mailinfo when rebasing
2010-06-27Merge branch 'ab/blame-textconv'Libravatar Junio C Hamano1-0/+80
* ab/blame-textconv: t/t8006: test textconv support for blame textconv: support for blame textconv: make the API public Conflicts: diff.h
2010-06-22Merge branch 'sb/format-patch-signature'Libravatar Junio C Hamano2-0/+55
* sb/format-patch-signature: completion: Add --signature and format.signature format-patch: Add a signature option (--signature)
2010-06-22Merge branch 'mg/pretty-magic-space'Libravatar Junio C Hamano1-0/+10
* mg/pretty-magic-space: pretty: Introduce ' ' modifier to add space if non-empty Conflicts: pretty.c
2010-06-22Merge branch 'cc/cherry-pick-series'Libravatar Junio C Hamano1-0/+95
* cc/cherry-pick-series: Documentation/revert: describe passing more than one commit Documentation/cherry-pick: describe passing more than one commit revert: add tests to check cherry-picking many commits revert: allow cherry-picking more than one commit revert: change help_msg() to take no argument revert: refactor code into a do_pick_commit() function revert: use run_command_v_opt() instead of execv_git_cmd() revert: cleanup code for -x option
2010-06-22Merge branch 'jc/rev-list-ancestry-path'Libravatar Junio C Hamano1-0/+73
* jc/rev-list-ancestry-path: revision: Turn off history simplification in --ancestry-path mode revision: Fix typo in --ancestry-path error message Documentation/rev-list-options.txt: Explain --ancestry-path Documentation/rev-list-options.txt: Fix missing line in example history graph revision: --ancestry-path
2010-06-22Merge branch 'maint'Libravatar Junio C Hamano2-3/+3
* maint: Update draft release notes to 1.7.1.1 tests: remove unnecessary '^' from 'expr' regular expression Conflicts: diff.c
2010-06-22Merge branch 'ic/maint-rebase-i-abort' into maintLibravatar Junio C Hamano1-0/+10
* ic/maint-rebase-i-abort: rebase -i: Abort cleanly if new base cannot be checked out
2010-06-22Merge branch 'cc/maint-commit-reflog-msg' into maintLibravatar Junio C Hamano1-2/+4
* cc/maint-commit-reflog-msg: commit: use value of GIT_REFLOG_ACTION env variable as reflog message
2010-06-22Merge branch 'tc/commit-abbrev-fix' into maintLibravatar Junio C Hamano1-0/+68
* tc/commit-abbrev-fix: commit::print_summary(): don't use format_commit_message() t7502-commit: add summary output tests for empty and merge commits t7502-commit: add tests for summary output
2010-06-22Merge branch 'jn/document-rebase-i-p-limitation' into maintLibravatar Junio C Hamano1-0/+6
* jn/document-rebase-i-p-limitation: rebase -i -p: document shortcomings
2010-06-22Merge branch 'cc/maint-diff-CC-binary' into maintLibravatar Junio C Hamano2-0/+82
* cc/maint-diff-CC-binary: diff: fix "git show -C -C" output when renaming a binary file Conflicts: diff.c
2010-06-22Merge branch 'jc/t9129-any-utf8' into maintLibravatar Junio C Hamano1-7/+13
* jc/t9129-any-utf8: t9129: fix UTF-8 locale detection
2010-06-22Merge branch 'cb/ls-files-cdup' into maintLibravatar Junio C Hamano1-8/+4
* cb/ls-files-cdup: ls-files: allow relative pathspec quote.c: separate quoting and relative path generation
2010-06-22Merge branch 'tc/merge-m-log' into maintLibravatar Junio C Hamano1-4/+20
* tc/merge-m-log: merge: --log appends shortlog to message if specified fmt-merge-msg: add function to append shortlog only fmt-merge-msg: refactor merge title formatting fmt-merge-msg: minor refactor of fmt_merge_msg() merge: rename variable merge: update comment t7604-merge-custom-message: show that --log doesn't append to -m t7604-merge-custom-message: shift expected output creation
2010-06-22Merge branch 'jn/maint-amend-missing-name' into maintLibravatar Junio C Hamano1-0/+46
* jn/maint-amend-missing-name: commit --amend: cope with missing display name
2010-06-22Merge branch 'pc/remove-warn' into maintLibravatar Junio C Hamano1-0/+38
* pc/remove-warn: Remove a redundant errno test in a usage of remove_path Introduce remove_or_warn function Implement the rmdir_or_warn function Generalise the unlink_or_warn function
2010-06-21tests: remove unnecessary '^' from 'expr' regular expressionLibravatar Junio C Hamano2-3/+3
As Brandon noticed, a regular expression match given to 'expr' is already anchored at the beginning. Some versions of expr even complain about this. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-06-21Merge branch 'cc/maint-commit-reflog-msg'Libravatar Junio C Hamano1-2/+4
* cc/maint-commit-reflog-msg: commit: use value of GIT_REFLOG_ACTION env variable as reflog message
2010-06-21Merge branch 'ic/maint-rebase-i-abort'Libravatar Junio C Hamano1-0/+10
* ic/maint-rebase-i-abort: rebase -i: Abort cleanly if new base cannot be checked out
2010-06-21Merge branch 'eb/core-eol'Libravatar Junio C Hamano2-0/+238
* eb/core-eol: Add "core.eol" config variable Rename the "crlf" attribute "text" Add per-repository eol normalization Add tests for per-repository eol normalization Conflicts: Documentation/config.txt Makefile
2010-06-21Merge branch 'fg/autocrlf'Libravatar Junio C Hamano1-0/+52
* fg/autocrlf: autocrlf: Make it work also for un-normalized repositories
2010-06-21Merge branch 'jn/document-rebase-i-p-limitation'Libravatar Junio C Hamano1-0/+6
* jn/document-rebase-i-p-limitation: rebase -i -p: document shortcomings
2010-06-21Merge branch 'tc/commit-abbrev-fix'Libravatar Junio C Hamano1-0/+68
* tc/commit-abbrev-fix: commit::print_summary(): don't use format_commit_message() t7502-commit: add summary output tests for empty and merge commits t7502-commit: add tests for summary output
2010-06-21Merge branch 'gs/usage-to-stdout'Libravatar Junio C Hamano2-6/+10
* gs/usage-to-stdout: parseopt: wrap rev-parse --parseopt usage for eval consumption print the usage string on stdout instead of stderr Conflicts: parse-options.h
2010-06-21Merge branch 'js/async-thread'Libravatar Junio C Hamano1-9/+9
* js/async-thread: fast-import: die_nicely() back to vsnprintf (reverts part of ebaa79f) Enable threaded async procedures whenever pthreads is available Dying in an async procedure should only exit the thread, not the process. Reimplement async procedures using pthreads Windows: more pthreads functions Fix signature of fcntl() compatibility dummy Make report() from usage.c public as vreportf() and use it. Modernize t5530-upload-pack-error. Conflicts: http-backend.c
2010-06-21Merge branch 'gv/portable'Libravatar Junio C Hamano20-56/+66
* gv/portable: test-lib: use DIFF definition from GIT-BUILD-OPTIONS build: propagate $DIFF to scripts Makefile: Tru64 portability fix Makefile: HP-UX 10.20 portability fixes Makefile: HPUX11 portability fixes Makefile: SunOS 5.6 portability fix inline declaration does not work on AIX Allow disabling "inline" Some platforms lack socklen_t type Make NO_{INET_NTOP,INET_PTON} configured independently Makefile: some platforms do not have hstrerror anywhere git-compat-util.h: some platforms with mmap() lack MAP_FAILED definition test_cmp: do not use "diff -u" on platforms that lack one fixup: do not unconditionally disable "diff -u" tests: use "test_cmp", not "diff", when verifying the result Do not use "diff" found on PATH while building and installing enums: omit trailing comma for portability Makefile: -lpthread may still be necessary when libc has only pthread stubs Rewrite dynamic structure initializations to runtime assignment Makefile: pass CPPFLAGS through to fllow customization Conflicts: Makefile wt-status.h
2010-06-21Merge branch 'bc/portable'Libravatar Junio C Hamano5-11/+19
* bc/portable: Remove python 2.5'isms Makefile: add PYTHON_PATH to GIT-BUILD-OPTIONS t/aggregate-results: accomodate systems with small max argument list length t/t7006: ignore return status of shell's unset builtin t/t5150: remove space from sed script git-request-pull.sh: remove -e switch to shell interpreter which breaks ksh t/t5800: skip if python version is older than 2.5
2010-06-21Merge branch 'em/checkout-orphan'Libravatar Junio C Hamano2-21/+81
* em/checkout-orphan: log_ref_setup: don't return stack-allocated array bash completion: add --orphan to 'git checkout' t3200: test -l with core.logAllRefUpdates options checkout --orphan: respect -l option always refs: split log_ref_write logic into log_ref_setup Documentation: alter checkout --orphan description
2010-06-21Merge branch 'cb/assume-unchanged-fix' into maintLibravatar Junio C Hamano1-0/+24
* cb/assume-unchanged-fix: Documentation: git-add does not update files marked "assume unchanged" do not overwrite files marked "assume unchanged"
2010-06-21Merge branch 'jn/notes-doc' into maintLibravatar Junio C Hamano1-0/+38
* jn/notes-doc: Documentation/notes: nitpicks Documentation/notes: clean up description of rewriting configuration Documentation/notes: simplify treatment of default display refs Documentation/log: add a CONFIGURATION section Documentation/notes: simplify treatment of default notes ref Documentation/notes: add configuration section Documentation/notes: describe content of notes blobs Documentation/notes: document format of notes trees
2010-06-21Merge branch 'ab/test-cleanup' into maintLibravatar Junio C Hamano5-5/+7
* ab/test-cleanup: Turn setup code in t2007-checkout-symlink.sh into a test Move t6000lib.sh to lib-*
2010-06-21Merge branch 'bg/apply-blank-trailing-context' into maintLibravatar Junio C Hamano1-0/+12
* bg/apply-blank-trailing-context: apply: Allow blank *trailing* context lines to match beyond EOF
2010-06-18t/t8007: test textconv support for cat-fileLibravatar Clément Poulain1-0/+70
Test the correct functionning of textconv with cat-file <sha1:blob> and cat-file HEAD^ <file>. Test the case when no driver is specified Signed-off-by: Clément Poulain <clement.poulain@ensimag.imag.fr> Signed-off-by: Diane Gasselin <diane.gasselin@ensimag.imag.fr> Signed-off-by: Axel Bonnet <axel.bonnet@ensimag.imag.fr> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-06-18Merge branch 'cc/maint-diff-CC-binary'Libravatar Junio C Hamano2-0/+82
* cc/maint-diff-CC-binary: diff: fix "git show -C -C" output when renaming a binary file Conflicts: diff.c
2010-06-18Merge branch 'cb/ls-files-cdup'Libravatar Junio C Hamano1-8/+4
* cb/ls-files-cdup: ls-files: allow relative pathspec quote.c: separate quoting and relative path generation
2010-06-18Merge branch 'jc/t9129-any-utf8'Libravatar Junio C Hamano1-7/+13
* jc/t9129-any-utf8: t9129: fix UTF-8 locale detection
2010-06-18Merge branch 'jn/rebase-cmdline-fix'Libravatar Junio C Hamano1-1/+12
* jn/rebase-cmdline-fix: rebase: improve error message when upstream argument is missing
2010-06-18Merge branch 'jh/diff-index-line-abbrev'Libravatar Junio C Hamano1-0/+35
* jh/diff-index-line-abbrev: diff.c: Ensure "index $from..$to" line contains unambiguous SHA1s Conflicts: diff.c
2010-06-18Merge branch 'mg/status-b'Libravatar Junio C Hamano1-1/+46
* mg/status-b: Documentation+t5708: document and test status -s -b Show branch information in short output of git status
2010-06-18Merge branch 'jn/gitweb-plackup'Libravatar Junio C Hamano1-3/+3
* jn/gitweb-plackup: git-instaweb: Add support for running gitweb via 'plackup' git-instaweb: Wait for server to start before running web browser git-instaweb: Remove pidfile after stopping web server git-instaweb: Configure it to work with new gitweb structure git-instaweb: Put httpd logs in a "$httpd_only" subdirectory gitweb: Set default destination directory for installing gitweb in Makefile gitweb: Move static files into seperate subdirectory
2010-06-18Merge branch 'jk/url-decode'Libravatar Junio C Hamano1-0/+12
* jk/url-decode: decode file:// and ssh:// URLs make url-related functions reusable
2010-06-18Merge branch 'jn/remote-set-branches'Libravatar Junio C Hamano1-0/+88
* jn/remote-set-branches: Add git remote set-branches Conflicts: builtin/remote.c
2010-06-18Merge branch 'rc/ls-remote-default'Libravatar Junio C Hamano1-4/+20
* rc/ls-remote-default: ls-remote: print URL when no repo is specified
2010-06-18Merge branch 'hg/id-munging'Libravatar Junio C Hamano1-6/+10
* hg/id-munging: convert: Keep foreign $Id$ on checkout. convert: Safer handling of $Id$ contraction.
2010-06-18Merge branch 'tc/merge-m-log'Libravatar Junio C Hamano1-4/+20
* tc/merge-m-log: merge: --log appends shortlog to message if specified fmt-merge-msg: add function to append shortlog only fmt-merge-msg: refactor merge title formatting fmt-merge-msg: minor refactor of fmt_merge_msg() merge: rename variable merge: update comment t7604-merge-custom-message: show that --log doesn't append to -m t7604-merge-custom-message: shift expected output creation Conflicts: builtin.h