summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2006-07-01--name-only, --name-status, --check and -s are mutually exclusiveLibravatar Timo Hirvonen1-0/+13
Signed-off-by: Timo Hirvonen <tihirvon@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-07-01builtin-diff: turn recursive on when defaulting to --patch format.Libravatar Junio C Hamano1-1/+3
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-06-29Merge branch 'jc/diff-test-updates' into th/diffLibravatar Junio C Hamano4-6/+68
* jc/diff-test-updates: t4013: note improvements brought by the new output code.
2006-06-29t4013: note improvements brought by the new output code.Libravatar Junio C Hamano4-6/+68
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-06-29Merge branch 'jc/diff-test' into jc/diff-test-updatesLibravatar Junio C Hamano7-1/+581
* jc/diff-test: t4013: add format-patch tests.
2006-06-29Merge branch 'jc/diff-test' into th/diffLibravatar Junio C Hamano7-1/+581
* jc/diff-test: t4013: add format-patch tests.
2006-06-29t4013: add format-patch tests.Libravatar Junio C Hamano7-1/+581
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-06-29format-patch: fix diff format option implementationLibravatar Junio C Hamano1-1/+2
The updates forgot to make the diff go recursive.
2006-06-28Merge branch 'jc/diff-test-updates' into th/diffLibravatar Junio C Hamano6-10/+4
* jc/diff-test-updates: t4013 test updates for new output code.
2006-06-28combine-diff.c: type sanity.Libravatar Junio C Hamano1-1/+1
In diff_tree_combined(), show_log_first boolean is initialized with rev->loginfo (pointer to a string); the intention is that if we have some string to be emitted we would want to remember that fact. Picky compilers are offended by this, so make the expression a bit type-safer. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-06-27t4013 test updates for new output code.Libravatar Junio C Hamano6-10/+4
These are updates to the test vector that shows the "incompatibility" of the new output code. The changes are actually the good ones, so instead of keeping the older output we adjust the test to the new code. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-06-27Fix some more diff options changes.Libravatar Junio C Hamano4-19/+38
This fixes various problems in the new diff options code. - Fix --cc/-c --patch; it showed two-tree diff used internally. - Use "---\n" only where it matters -- that is, use it immediately after the commit log text when we show a commit log and something else before the patch text. - Do not output spurious extra "\n"; have an extra newline after the commit log text always when we have diff output and we are not doing oneline. - When running a pickaxe you need to go recursive. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-06-27Merge branch 'jc/diff-test' into th/diffLibravatar Junio C Hamano89-0/+3839
* jc/diff-test: t4013: add more tests around -c and --cc t4013: add tests for diff/log family output options.
2006-06-27Fix diff-tree -sLibravatar Timo Hirvonen1-3/+0
setup_revisions() calls diff_setup_done() before we can set default value for output_format. Don't convert DIFF_FORMAT_NO_OUTPUT to 0 in diff_setup_done(), it is useless and makes diff-tree believe no diff format parameters were given and thus lets it reset output_format to DIFF_FORMAT_RAW. Signed-off-by: Timo Hirvonen <tihirvon@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-06-27log --raw: Don't descend into subdirectories by defaultLibravatar Timo Hirvonen1-1/+0
Only do so when -r is given. Signed-off-by: Timo Hirvonen <tihirvon@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-06-27diff-tree: Use ---\n as a message separatorLibravatar Timo Hirvonen1-0/+1
Signed-off-by: Timo Hirvonen <tihirvon@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-06-27Print empty line between raw, stat, summary and patchLibravatar Timo Hirvonen1-5/+42
Signed-off-by: Timo Hirvonen <tihirvon@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-06-26t4013: add more tests around -c and --ccLibravatar Junio C Hamano18-3/+1263
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-06-26whatchanged: Default to DIFF_FORMAT_RAWLibravatar Timo Hirvonen1-11/+16
Split cmd_log_wc() to cmd_log_init() and cmd_log_walk() and set default diff output format for whatchanged to DIFF_FORMAT_RAW. Signed-off-by: Timo Hirvonen <tihirvon@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-06-26Don't xcalloc() struct diffstat_tLibravatar Timo Hirvonen1-6/+5
Signed-off-by: Timo Hirvonen <tihirvon@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-06-26Add msg_sep to diff_optionsLibravatar Timo Hirvonen6-13/+14
Add msg_sep variable to struct diff_options. msg_sep is printed after commit message. Default is "\n", format-patch sets it to "---\n". This also removes the second argument from show_log() because all callers derived it from the first argument: show_log(rev, rev->loginfo, ... Signed-off-by: Timo Hirvonen <tihirvon@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-06-26DIFF_FORMAT_RAW is not default anymoreLibravatar Timo Hirvonen2-6/+2
diff_setup() used to initialize output_format to DIFF_FORMAT_RAW. Now the default is 0 (no output) so don't compare against DIFF_FORMAT_RAW to see if any diff format command line flags were given. Signed-off-by: Timo Hirvonen <tihirvon@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-06-26Set default diff output format after parsing command lineLibravatar Timo Hirvonen7-3/+18
Initialize output_format to 0 instead of DIFF_FORMAT_RAW so that we can see later if any command line options changed it. Default value is set only if output format was not specified. Signed-off-by: Timo Hirvonen <tihirvon@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-06-26Make --raw option available for all diff commandsLibravatar Timo Hirvonen2-36/+14
Signed-off-by: Timo Hirvonen <tihirvon@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-06-26Merge with_raw, with_stat and summary variables to output_formatLibravatar Timo Hirvonen6-144/+136
DIFF_FORMAT_* are now bit-flags instead of enumerated values. Signed-off-by: Timo Hirvonen <tihirvon@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-06-26t4013: add tests for diff/log family output options.Libravatar Junio C Hamano72-0/+2579
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-06-26Merge branch 'jc/squash'Libravatar Junio C Hamano5-24/+72
* jc/squash: git-merge --squash
2006-06-26Merge branch 'jc/diff'Libravatar Junio C Hamano2-15/+80
* jc/diff: diff --color: use $GIT_DIR/config
2006-06-26Merge branch 'ml/cvsimport'Libravatar Junio C Hamano1-17/+23
* ml/cvsimport: cvsimport: always set $ENV{GIT_INDEX_FILE} to $index{$branch} cvsimport: setup indexes correctly for ancestors and incremental imports
2006-06-26Merge branch 'js/diff'Libravatar Junio C Hamano9-20/+81
* js/diff: Teach diff about -b and -w flags
2006-06-26Merge branch 'ew/rebase'Libravatar Junio C Hamano4-24/+90
* ew/rebase: rebase: allow --skip to work with --merge rebase: cleanup rebasing with --merge rebase: allow --merge option to handle patches merged upstream
2006-06-26Fix pkt-line.h to compile with a non-GCC compilerLibravatar Dennis Stosberg1-0/+2
pkt-line.h uses GCC's __attribute__ extension but does not include git-compat-util.h. So it will not compile with a compiler that does not support this extension. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-06-26Solaris needs inclusion of signal.h for signal()Libravatar Dennis Stosberg2-0/+2
Currently the compilation fails in connect.c and merge-index.c Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-06-25correct documentation for git grepLibravatar Matthias Lederhofer1-1/+6
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-06-25diff --color: use $GIT_DIR/configLibravatar Junio C Hamano2-15/+80
This lets you use something like this in your $GIT_DIR/config file. [diff] color = auto [diff.color] new = blue old = yellow frag = reverse When diff.color is set to "auto", colored diff is enabled when the standard output is the terminal. Other choices are "always", and "never". Usual boolean true/false can also be used. The colormap entries can specify colors for the following slots: plain - lines that appear in both old and new file (context) meta - diff --git header and extended git diff headers frag - @@ -n,m +l,k @@ lines (hunk header) old - lines deleted from old file new - lines added to new file The following color names can be used: normal, bold, dim, l, blink, reverse, reset, black, red, green, yellow, blue, magenta, cyan, white Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-06-25rebase: allow --skip to work with --mergeLibravatar Eric Wong3-2/+73
Now that we control the merge base selection, we won't be forced into rolling things in that we wanted to skip beforehand. Also, add a test to ensure this all works as intended. Signed-off-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-06-25rebase: cleanup rebasing with --mergeLibravatar Eric Wong1-28/+5
We no longer have to recommit each patch to remove the parent information we're rebasing since we're using the low-level merge strategies directly instead of git-merge. Signed-off-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-06-25rebase: allow --merge option to handle patches merged upstreamLibravatar Eric Wong2-5/+23
Enhance t3401-rebase-partial to test with --merge as well as the standard am -3 strategy. Signed-off-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-06-25git-commit: filter out log message lines only when editor was run.Libravatar Yann Dirson1-7/+12
The current behaviour strips out lines starting with a # even when fed through stdin or -m. This is particularly bad when importing history from another SCM (tailor 0.9.23 uses git-commit). In the best cases all lines are stripped and the commit fails with a confusing "empty log message" error, but in many cases the commit is done, with loss of information. Note that it is quite peculiar to just have "#" handled as a leading comment char here. One commonly meet CVS: or CG: or STG: as prefixes, and using GIT: would be more robust as well as consistent with other commit tools. However, that would break any tool relying on the # (if any). Signed-off-by: Yann Dirson <ydirson@altern.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-06-24Rename safe_strncpy() to strlcpy().Libravatar Peter Eriksen12-30/+48
This cleans up the use of safe_strncpy() even more. Since it has the same semantics as strlcpy() use this name instead. Also move the definition from inside path.c to its own file compat/strlcpy.c, and use it conditionally at compile time, since some platforms already has strlcpy(). It's included in the same way as compat/setenv.c. Signed-off-by: Peter Eriksen <s022018@student.dtu.dk> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-06-24apply: replace NO_ACCURATE_DIFF with --inaccurate-eof runtime flag.Libravatar Johannes Schindelin1-9/+16
It does not make much sense to build git whose behaviour is different depending on the brokenness of diff implementation of the platform because the brokenness of the patch that is applied with the tool depends on brokenness of the diff the person who generates the patch uses. So we do not use NO_ACCURATE_DIFF anymore, but help people to apply patches that do not record incomplete lines correctly with a runtime flag. Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-06-24Clean up diff.cLibravatar Timo Hirvonen1-12/+6
Signed-off-by: Timo Hirvonen <tihirvon@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-06-24cvsimport: always set $ENV{GIT_INDEX_FILE} to $index{$branch}Libravatar Johannes Schindelin1-7/+8
Also, make sure that the initial git-read-tree is performed. Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de>
2006-06-24cvsimport: setup indexes correctly for ancestors and incremental importsLibravatar Martin Langhoff1-17/+22
Two bugs had slipped in the "keep one index per branch during import" patch. Both incremental imports and new branches would see an empty tree for their initial commit. Now we cover all the relevant cases, checking whether we actually need to setup the index before preparing the actual commit, and doing it. Signed-off-by: Martin Langhoff <martin@catalyst.net.nz> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-06-24repo-config: fix printing of boolLibravatar Junio C Hamano1-6/+3
When a bool variable appears without any value, it means true. However, replacing the NULL value with an empty string, an earlier commit f067a13745fbeae1aa357876348a00e5edd0a629 broke show-config. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-06-24diff --color: use reset sequence when we mean reset.Libravatar Junio C Hamano1-1/+1
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-06-24git-repack -- respect -q and be quietLibravatar Martin Langhoff1-2/+3
git-repack was passing the -q along to pack-objects but ignoring it itself. Correct the oversight. Signed-off-by: Martin Langhoff <martin@catalyst.net.nz> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-06-24git-merge --squashLibravatar Junio C Hamano5-24/+72
Some people tend to do many little commits on a topic branch, recording all the trials and errors, and when the topic is reasonably cooked well, would want to record the net effect of the series as one commit on top of the mainline, removing the cruft from the history. The topic is then abandoned or forked off again from that point at the mainline. The barebone porcelainish that comes with core git tools does not officially support such operation, but you can fake it by using "git pull --no-merge" when such a topic branch is not a strict superset of the mainline, like this: git checkout mainline git pull --no-commit . that-topic-branch : fix conflicts if any rm -f .git/MERGE_HEAD git commit -a -m 'consolidated commit log message' git branch -f that-topic-branch ;# now fully merged This however does not work when the topic branch is a fast forward of the mainline, because normal "git pull" will never create a merge commit in such a case, and there is nothing special --no-commit could do to begin with. This patch introduces a new option, --squash, to support such a workflow officially in both fast-forward case and true merge case. The user-level operation would be the same in both cases: git checkout mainline git pull --squash . that-topic-branch : fix conflicts if any -- naturally, there would be : no conflict if fast forward. git commit -a -m 'consolidated commit log message' git branch -f that-topic-branch ;# now fully merged When the current branch is already up-to-date with respect to the other branch, there truly is nothing to do, so the new option does not have any effect. This was brought up in #git IRC channel recently. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-06-24git-pull: abort when fmt-merge-msg fails.Libravatar Junio C Hamano1-1/+1
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-06-24Merge branch 'pb/error'Libravatar Junio C Hamano5-6/+52
* pb/error: usage: minimum type fix. Customizable error handlers git-merge: Don't use -p when outputting summary git-commit: allow -e option anywhere on command line patch-id: take "commit" prefix as well as "diff-tree" prefix