summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2011-09-02Merge branch 'va/p4-branch-import-test-update'Libravatar Junio C Hamano1-11/+8
* va/p4-branch-import-test-update: git-p4: simple branch tests edits
2011-09-02Merge branch 'tr/maint-strbuf-grow-nul-termination'Libravatar Junio C Hamano1-4/+5
* tr/maint-strbuf-grow-nul-termination: strbuf_grow(): maintain nul-termination even for new buffer
2011-09-02Merge branch 'tr/maint-ident-to-git-memmove'Libravatar Junio C Hamano1-2/+2
* tr/maint-ident-to-git-memmove: Use memmove in ident_to_git
2011-09-02Merge branch 'tr/maint-format-patch-empty-output'Libravatar Junio C Hamano2-4/+28
* tr/maint-format-patch-empty-output: Document negated forms of format-patch --to --cc --add-headers t4014: "no-add-headers" is actually called "no-add-header" t4014: invoke format-patch with --stdout where intended t4014: check for empty files from git format-patch --stdout
2011-09-02Merge branch 'gb/maint-am-stgit-author-to-from-fix'Libravatar Junio C Hamano1-1/+1
* gb/maint-am-stgit-author-to-from-fix: am: fix stgit patch mangling
2011-09-02Merge branch 'gb/maint-am-patch-format-error-message'Libravatar Junio C Hamano2-1/+15
* gb/maint-am-patch-format-error-message: am: format is in $patch_format, not parse_patch Conflicts: git-am.sh
2011-09-02Merge branch 'ms/daemon-timeout-is-in-seconds'Libravatar Junio C Hamano1-5/+5
* ms/daemon-timeout-is-in-seconds: git-daemon.txt: specify --timeout in seconds
2011-09-02Merge branch 'bg/t5540-osx-grep'Libravatar Junio C Hamano1-2/+6
* bg/t5540-osx-grep: t5540-http-test: shorten grep pattern
2011-09-02Merge branch 'jc/clean-exclude-doc'Libravatar Junio C Hamano2-6/+9
* jc/clean-exclude-doc: Documentation: clarify "git clean -e <pattern>"
2011-09-02Merge branch 'mg/maint-notes-C-doc'Libravatar Junio C Hamano1-2/+5
* mg/maint-notes-C-doc: git-notes.txt: clarify -C vs. copy and -F
2011-09-02Merge branch 'fg/submodule-ff-check-before-push'Libravatar Junio C Hamano7-0/+231
* fg/submodule-ff-check-before-push: push: Don't push a repository with unpushed submodules
2011-09-02Merge branch 'rc/diff-cleanup-records'Libravatar Junio C Hamano1-37/+51
* rc/diff-cleanup-records: xdiff/xprepare: improve O(n*m) performance in xdl_cleanup_records()
2011-09-02Merge branch 'fk/use-kwset-pickaxe-grep-f'Libravatar Junio C Hamano9-34/+1830
* fk/use-kwset-pickaxe-grep-f: obstack: Fix portability issues Use kwset in grep Use kwset in pickaxe Adapt the kwset code to Git Add string search routines from GNU grep Add obstack.[ch] from EGLIBC 2.10
2011-09-02Merge branch 'en/merge-recursive-2'Libravatar Junio C Hamano10-430/+2170
* en/merge-recursive-2: (57 commits) merge-recursive: Don't re-sort a list whose order we depend upon merge-recursive: Fix virtual merge base for rename/rename(1to2)/add-dest t6036: criss-cross + rename/rename(1to2)/add-dest + simple modify merge-recursive: Avoid unnecessary file rewrites t6022: Additional tests checking for unnecessary updates of files merge-recursive: Fix spurious 'refusing to lose untracked file...' messages t6022: Add testcase for spurious "refusing to lose untracked" messages t3030: fix accidental success in symlink rename merge-recursive: Fix working copy handling for rename/rename/add/add merge-recursive: add handling for rename/rename/add-dest/add-dest merge-recursive: Have conflict_rename_delete reuse modify/delete code merge-recursive: Make modify/delete handling code reusable merge-recursive: Consider modifications in rename/rename(2to1) conflicts merge-recursive: Create function for merging with branchname:file markers merge-recursive: Record more data needed for merging with dual renames merge-recursive: Defer rename/rename(2to1) handling until process_entry merge-recursive: Small cleanups for conflict_rename_rename_1to2 merge-recursive: Fix rename/rename(1to2) resolution for virtual merge base merge-recursive: Introduce a merge_file convenience function merge-recursive: Fix modify/delete resolution in the recursive case ...
2011-09-01git-svn: Teach dcommit --mergeinfo to handle multiple linesLibravatar Bryan Jacobs3-2/+19
"svn dcommit --mergeinfo" replaces the svn:mergeinfo property in an upstream SVN repository with the given text. The svn:mergeinfo property may contain commits originating on multiple branches, separated by newlines. Cause space characters in the mergeinfo to be replaced by newlines, allowing a user to create history representing multiple branches being merged into one. Update the corresponding documentation and add a test for the new functionality. Signed-off-by: Bryan Jacobs <bjacobs@woti.com> Acked-by: Sam Vilain <sam@vilain.net> Acked-by: Eric Wong <normalperson@yhbt.net>
2011-09-01git-svn: fix fetch with moved path when using rewriteRootLibravatar Eric Wong1-1/+1
The matching step in commit 3235b7053c45a734c1cdf9b117bda68b7ced29c9 did not properly account for users of the "rewriteRoot" configuration parameter. ref: <CANWsHyfHtr0EaJtNsDK9UTcmb_AbLg-1jUA-0uWJ-nEeNosb7w@mail.gmail.com> Suggested-by: H Krishnan <hetchkay@gmail.com> Signed-off-by: Eric Wong <normalperson@yhbt.net>
2011-09-01git-svn: New flag to emulate empty directoriesLibravatar Ray Chen3-4/+308
Adds a --preserve-empty-dirs flag to the clone operation that will detect empty directories in the remote Subversion repository and create placeholder files in the corresponding local Git directories. This allows "empty" directories to exist in the history of a Git repository. Also adds the --placeholder-file flag to control the name of any placeholder files created. Default value is ".gitignore". Signed-off-by: Ray Chen <rchen@cs.umd.edu> Acked-by: Eric Wong <normalperson@yhbt.net>
2011-08-30Merge branch 'maint'Libravatar Junio C Hamano1-4/+7
* maint: Documentation: clarify effects of -- <path> arguments
2011-08-30Documentation: clarify effects of -- <path> argumentsLibravatar Thomas Rast1-4/+7
'git log -- <path>' does not "show commits that affect the specified paths" in a literal sense unless --full-history is given (for example, a file that only existed on a side branch will turn up no commits at all!). Reword it to specify the actual intent of the filtering, and point to the "History Simplification" section. Signed-off-by: Thomas Rast <trast@student.ethz.ch> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-08-29strbuf_grow(): maintain nul-termination even for new bufferLibravatar Thomas Rast1-4/+5
In the case where sb is initialized to the slopbuf (through strbuf_init(sb,0) or STRBUF_INIT), strbuf_grow() loses the terminating nul: it grows the buffer, but gives ALLOC_GROW a NULL source to avoid it being freed. So ALLOC_GROW does not copy anything to the new memory area. This subtly broke the call to strbuf_getline in read_next_command() [fast-import.c:1855], which goes strbuf_detach(&command_buf, NULL); # command_buf is now = STRBUF_INIT stdin_eof = strbuf_getline(&command_buf, stdin, '\n'); if (stdin_eof) return EOF; In strbuf_getwholeline, this did strbuf_grow(sb, 0); # loses nul-termination if (feof(fp)) return EOF; strbuf_reset(sb); # this would have nul-terminated! Valgrind found this because fast-import subsequently uses prefixcmp() on command_buf.buf, which after the EOF exit contains only uninitialized memory. Arguably strbuf_getwholeline is also broken, in that it touches the buffer before deciding whether to do any work. However, it seems more futureproof to not let the strbuf API lose the nul-termination by its own fault. So make sure that strbuf_grow() puts in a nul even if it has nowhere to copy it from. This makes strbuf_grow(sb, 0) a semantic no-op as far as readers of the buffer are concerned. Also remove the nul-termination added by strbuf_init, which is made redudant. Signed-off-by: Thomas Rast <trast@student.ethz.ch> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-08-29Document negated forms of format-patch --to --cc --add-headersLibravatar Thomas Rast1-1/+8
The negated forms introduced in c426003 (format-patch: add --no-cc, --no-to, and --no-add-headers, 2010-03-07) were not documented anywhere. Add them to the descriptions of the positive forms. Signed-off-by: Thomas Rast <trast@student.ethz.ch> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-08-29t4014: "no-add-headers" is actually called "no-add-header"Libravatar Thomas Rast1-2/+2
Since c426003 (format-patch: add --no-cc, --no-to, and --no-add-headers, 2010-03-07) the tests have checked for an option called --no-add-headers introduced by letting the user negate --add-header. However, the parseopt machinery does not automatically pluralize anything, so it is in fact called --no-add-header. Since the option never worked, is not documented anywhere, and implementing an actual --no-add-headers would lead to silly code complications, we just adapt the test to the code. Signed-off-by: Thomas Rast <trast@student.ethz.ch> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-08-29t4014: invoke format-patch with --stdout where intendedLibravatar Thomas Rast1-2/+2
The test wrote something along the lines of 0001-foo.patch to output, which of course never contained a signature. Luckily the tested behaviour is actually present. Signed-off-by: Thomas Rast <trast@student.ethz.ch> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-08-29t4014: check for empty files from git format-patch --stdoutLibravatar Thomas Rast1-2/+19
Most kinds of failure in 'git format-patch --stdout >output' will result in an empty 'output'. This slips past checks that only verify absence of output, such as the '! grep ...' that are quite prevalent in t4014. Introduce a helper check_patch() that checks that at least From, Date and Subject are present, thus making sure it looks vaguely like a patch (or cover letter) email. Then insert calls to it in all tests that do have positive checks for content. This makes two of the tests fail. Mark them as such; they'll be fixed in a moment. Signed-off-by: Thomas Rast <trast@student.ethz.ch> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-08-29Use memmove in ident_to_gitLibravatar Thomas Rast1-2/+2
convert_to_git sets src=dst->buf if any of the preceding conversions actually did any work. Thus in ident_to_git we have to use memmove instead of memcpy as far as src->dst copying is concerned. Signed-off-by: Thomas Rast <trast@student.ethz.ch> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-08-29am: fix stgit patch manglingLibravatar Giuseppe Bilotta1-1/+1
Signed-off-by: Giuseppe Bilotta <giuseppe.bilotta@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-08-29git-p4: simple branch tests editsLibravatar Pete Wyckoff1-11/+8
More review comments. Signed-off-by: Pete Wyckoff <pw@padd.com> Signed-off-by: Vitor Antunes <vitor.hda@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-08-29am: format is in $patch_format, not parse_patchLibravatar Giuseppe Bilotta1-1/+2
The error message given when the patch format was not recognized was wrong, since the variable checked was $parse_patch rather than $patch_format. Fix by checking the non-emptyness of the correct variable. Signed-off-by: Giuseppe Bilotta <giuseppe.bilotta@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-08-28t5540-http-test: shorten grep patternLibravatar Brian Gernhardt1-2/+6
On OS X, the grep pattern "\"OP .*/objects/$x2/X38_X40 HTTP/[.0-9]*\" 20[0-9] " is too long ($x38 and $x40 represent 38 and 40 copies of [0-9a-f]) for grep to handle. In order to still be able to match this, use the sed invocation to replace what we're looking for with a token. Improved-by: Junio C Hamano <gitster@pobox.com> Signed-off-by: Brian Gernhardt <brian@gernhardtsoftware.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-08-28Documentation: clarify "git clean -e <pattern>"Libravatar Junio C Hamano2-6/+9
The current explanation of -e can be misread as allowing the user to say I know 'git clean -XYZ' (substitute -XYZ with any option and/or parameter) will remove paths A, B, and C, and I want them all removed except for paths matching this pattern by adding '-e C' to the same command line, i.e. 'git clean -e C -XYZ'. But that is not what this option does. It augments the set of ignore rules from the command line, just like the same "-e <pattern>" argument does with the "ls-files" command (the user could probably pass "-e \!C" to tell the command to clean everything the command would normally remove, except for C). Also error out when both -x and -e are given with an explanation of what -e means---it is a symptom of misunderstanding what -e does. It also fixes small style nit in the parameter to add_exclude() call. The current code only works because EXC_CMDL happens to be defined as 0. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-08-28obstack: Fix portability issuesLibravatar Fredrik Kuivinen3-36/+6
i686-apple-darwin10-gcc-4.2.1 (GCC) 4.2.1, SunOS 5.10, and possibly others do not have exit.h and exitfail.h. Remove the use of these in obstack.c. The __block variable was renamed to block to avoid a gcc error: compat/obstack.h:190: error: __block attribute can be specified on variables only Initial-patch-by: David Aguilar <davvid@gmail.com> Reported-by: Brian Gernhardt <brian@gernhardtsoftware.com> Signed-off-by: Fredrik Kuivinen <frekui@gmail.com> Acked-by: David Aguilar <davvid@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-08-28Update draft release notes to 1.7.7Libravatar Junio C Hamano1-1/+24
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-08-28Merge branch 'nd/decorate-grafts'Libravatar Junio C Hamano4-21/+70
* nd/decorate-grafts: log: Do not decorate replacements with --no-replace-objects log: decorate "replaced" on to replaced commits log: decorate grafted commits with "grafted" Move write_shallow_commits to fetch-pack.c Add for_each_commit_graft() to iterate all grafts decoration: do not mis-decorate refs with same prefix
2011-08-28Merge branch 'nd/maint-clone-gitdir'Libravatar Junio C Hamano9-12/+33
* nd/maint-clone-gitdir: clone: allow to clone from .git file read_gitfile_gently(): rename misnamed function to read_gitfile()
2011-08-28Merge branch 'ci/forbid-unwanted-current-branch-update'Libravatar Junio C Hamano6-24/+65
* ci/forbid-unwanted-current-branch-update: Show interpreted branch name in error messages Prevent force-updating of the current branch
2011-08-28Merge branch 'jk/pager-with-external-command'Libravatar Junio C Hamano2-0/+38
* jk/pager-with-external-command: support pager.* for external commands
2011-08-28Merge branch 'jc/maint-clone-alternates'Libravatar Junio C Hamano3-30/+114
* jc/maint-clone-alternates: clone: clone from a repository with relative alternates clone: allow more than one --reference Conflicts: builtin/clone.c
2011-08-28Merge branch 'jk/color-and-pager'Libravatar Junio C Hamano21-147/+176
* jk/color-and-pager: want_color: automatically fallback to color.ui diff: don't load color config in plumbing config: refactor get_colorbool function color: delay auto-color decision until point of use git_config_colorbool: refactor stdout_is_tty handling diff: refactor COLOR_DIFF from a flag into an int setup_pager: set GIT_PAGER_IN_USE t7006: use test_config helpers test-lib: add helper functions for config t7006: modernize calls to unset Conflicts: builtin/commit.c parse-options.c
2011-08-28Merge branch 'mh/attr'Libravatar Junio C Hamano1-50/+63
* mh/attr: Unroll the loop over passes Change while loop into for loop Determine the start of the states outside of the pass loop Change parse_attr() to take a pointer to struct attr_state Increment num_attr in parse_attr_line(), not parse_attr() Document struct match_attr Add a file comment
2011-08-28Merge branch 'di/fast-import-tagging'Libravatar Junio C Hamano2-7/+74
* di/fast-import-tagging: fast-import: allow to tag newly created objects fast-import: add tests for tagging blobs
2011-08-28Merge branch 'di/fast-import-blob-tweak'Libravatar Junio C Hamano1-5/+12
* di/fast-import-blob-tweak: fast-import: treat cat-blob as a delta base hint for next blob fast-import: count and report # of calls to diff_delta in stats
2011-08-28Merge branch 'di/fast-import-deltified-tree'Libravatar Junio C Hamano2-5/+71
* di/fast-import-deltified-tree: fast-import: prevent producing bad delta fast-import: add a test for tree delta base corruption
2011-08-28Merge branch 'di/fast-import-ident'Libravatar Junio C Hamano5-18/+164
* di/fast-import-ident: fsck: improve committer/author check fsck: add a few committer name tests fast-import: check committer name more strictly fast-import: don't fail on omitted committer name fast-import: add input format tests
2011-08-28Merge branch 'bw/doc-repo-layout'Libravatar Junio C Hamano3-31/+34
* bw/doc-repo-layout: Mark http-fetch without -a as deprecated Documentation: Grammar correction, wording fixes and cleanup
2011-08-28Merge branch 'va/p4-branch-import'Libravatar Junio C Hamano3-9/+284
* va/p4-branch-import: git-p4: Add simple test case for branch import git-p4: Allow branch definition with git config git-p4: Allow filtering Perforce branches by user git-p4: Correct branch base depot path detection git-p4: Process detectCopiesHarder with --bool git-p4: Add test case for copy detection git-p4: Add test case for rename detection git-p4: Add description of rename/copy detection options git-p4: Allow setting rename/copy detection threshold
2011-08-28Merge branch 'jc/combine-diff-callback'Libravatar Junio C Hamano2-1/+70
* jc/combine-diff-callback: combine-diff: support format_callback
2011-08-28Merge branch 'nk/branch-v-abbrev'Libravatar Junio C Hamano2-2/+6
* nk/branch-v-abbrev: branch -v: honor core.abbrev
2011-08-28git-daemon.txt: specify --timeout in secondsLibravatar Michael Stapelberg1-5/+5
Signed-off-by: Michael Stapelberg <michael@stapelberg.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-08-25Git 1.7.7-rc0Libravatar Junio C Hamano2-3/+10
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-08-25log: Do not decorate replacements with --no-replace-objectsLibravatar Michael J Gruber1-0/+2
5267d29 (log: decorate "replaced" on to replaced commits, 2011-08-19) introduced textual decorations for replaced commits, based on the detection of refs/replace. Make it so that additionally the use of --no-replace-objects is detected: I.e. replaced commits are only decorated as replaced when they are actually replaced. Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>