1
0
mirror of https://github.com/git/git.git synced 2024-10-20 09:59:05 +02:00
git/t/t4013
Nguyễn Thái Ngọc Duy a2b7a3b3a9 diff: support --cached on unborn branches
"git diff --cached" (without revision) used to mean "git diff --cached
HEAD" (i.e. the user was too lazy to type HEAD). This "correctly"
failed when there was no commit yet. But was that correctness useful?

This patch changes the definition of what particular command means.
It is a request to show what _would_ be committed without further "git
add". The internal implementation is the same "git diff --cached HEAD"
when HEAD exists, but when there is no commit yet, it compares the index
with an empty tree object to achieve the desired result.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-02-07 15:04:30 -08:00
..
diff.config_format.subjectprefix_DIFFERENT_PREFIX
diff.diff_--abbrev_initial..side
diff.diff_--cached diff: support --cached on unborn branches 2011-02-07 15:04:30 -08:00
diff.diff_--cached_--_file0 diff: support --cached on unborn branches 2011-02-07 15:04:30 -08:00
diff.diff_--dirstat_master~1_master~2 Test diff --dirstat functionality 2009-02-20 00:02:48 -08:00
diff.diff_--name-status_dir2_dir "git diff": do not ignore index without --no-index 2008-05-24 00:16:39 -07:00
diff.diff_--no-index_--name-status_--_dir2_dir diff: accept -- when using --no-index 2009-01-06 23:18:20 -08:00
diff.diff_--no-index_--name-status_dir2_dir "git diff": do not ignore index without --no-index 2008-05-24 00:16:39 -07:00
diff.diff_--no-index_dir_dir3 Skip timestamp differences for diff --no-index 2009-02-18 10:55:33 -08:00
diff.diff_--patch-with-raw_-r_initial..side
diff.diff_--patch-with-raw_initial..side
diff.diff_--patch-with-stat_-r_initial..side
diff.diff_--patch-with-stat_initial..side
diff.diff_--stat_initial..side
diff.diff_-r_--stat_initial..side
diff.diff_-r_initial..side
diff.diff_initial..side
diff.diff_master_master^_side "git diff <tree>{3,}": do not reverse order of arguments 2008-10-12 12:36:19 -07:00
diff.diff-tree_--cc_--patch-with-stat_--summary_master
diff.diff-tree_--cc_--patch-with-stat_--summary_side
diff.diff-tree_--cc_--patch-with-stat_master
diff.diff-tree_--cc_--stat_--summary_master
diff.diff-tree_--cc_--stat_--summary_side
diff.diff-tree_--cc_--stat_master
diff.diff-tree_--cc_master
diff.diff-tree_--patch-with-raw_initial
diff.diff-tree_--patch-with-stat_initial
diff.diff-tree_--pretty_--patch-with-raw_initial
diff.diff-tree_--pretty_--patch-with-stat_initial
diff.diff-tree_--pretty_--patch-with-stat_side
diff.diff-tree_--pretty_--root_--patch-with-raw_initial
diff.diff-tree_--pretty_--root_--patch-with-stat_initial
diff.diff-tree_--pretty_--root_--stat_--summary_initial
diff.diff-tree_--pretty_--root_--stat_initial
diff.diff-tree_--pretty_--root_--summary_-r_initial
diff.diff-tree_--pretty_--root_--summary_initial
diff.diff-tree_--pretty_--root_-p_initial
diff.diff-tree_--pretty_--root_initial
diff.diff-tree_--pretty_--stat_--summary_initial
diff.diff-tree_--pretty_--stat_initial
diff.diff-tree_--pretty_--summary_initial
diff.diff-tree_--pretty_-p_initial
diff.diff-tree_--pretty_-p_side
diff.diff-tree_--pretty_initial
diff.diff-tree_--pretty_side
diff.diff-tree_--pretty=oneline_--patch-with-raw_initial
diff.diff-tree_--pretty=oneline_--patch-with-stat_initial
diff.diff-tree_--pretty=oneline_--root_--patch-with-raw_initial
diff.diff-tree_--pretty=oneline_--root_--patch-with-stat_initial
diff.diff-tree_--pretty=oneline_--root_-p_initial
diff.diff-tree_--pretty=oneline_--root_initial
diff.diff-tree_--pretty=oneline_-p_initial
diff.diff-tree_--pretty=oneline_initial
diff.diff-tree_--root_--abbrev_initial
diff.diff-tree_--root_--patch-with-raw_initial
diff.diff-tree_--root_--patch-with-stat_initial
diff.diff-tree_--root_-p_initial
diff.diff-tree_--root_-r_--abbrev_initial
diff.diff-tree_--root_-r_--abbrev=4_initial
diff.diff-tree_--root_-r_initial
diff.diff-tree_--root_initial
diff.diff-tree_-c_--abbrev_master
diff.diff-tree_-c_--stat_--summary_master
diff.diff-tree_-c_--stat_--summary_side
diff.diff-tree_-c_--stat_master
diff.diff-tree_-c_master
diff.diff-tree_-p_-m_master
diff.diff-tree_-p_initial
diff.diff-tree_-p_master
diff.diff-tree_-r_--abbrev_initial
diff.diff-tree_-r_--abbrev=4_initial
diff.diff-tree_-r_initial
diff.diff-tree_initial
diff.diff-tree_master
diff.format-patch_--attach_--stdout_--suffix=.diff_initial..side format-patch: --attach/inline uses filename instead of SHA1 2009-03-22 21:45:19 -07:00
diff.format-patch_--attach_--stdout_initial..master format-patch: --attach/inline uses filename instead of SHA1 2009-03-22 21:45:19 -07:00
diff.format-patch_--attach_--stdout_initial..master^ format-patch: --attach/inline uses filename instead of SHA1 2009-03-22 21:45:19 -07:00
diff.format-patch_--attach_--stdout_initial..side format-patch: --attach/inline uses filename instead of SHA1 2009-03-22 21:45:19 -07:00
diff.format-patch_--inline_--stdout_--numbered-files_initial..master format-patch: --numbered-files and --stdout aren't mutually exclusive 2009-03-22 21:46:02 -07:00
diff.format-patch_--inline_--stdout_--subject-prefix=TESTCASE_initial..master format-patch: --attach/inline uses filename instead of SHA1 2009-03-22 21:45:19 -07:00
diff.format-patch_--inline_--stdout_initial..master format-patch: --attach/inline uses filename instead of SHA1 2009-03-22 21:45:19 -07:00
diff.format-patch_--inline_--stdout_initial..master^ format-patch: --attach/inline uses filename instead of SHA1 2009-03-22 21:45:19 -07:00
diff.format-patch_--inline_--stdout_initial..master^^ format-patch: --attach/inline uses filename instead of SHA1 2009-03-22 21:45:19 -07:00
diff.format-patch_--inline_--stdout_initial..side format-patch: --attach/inline uses filename instead of SHA1 2009-03-22 21:45:19 -07:00
diff.format-patch_--stdout_--cover-letter_-n_initial..master^ format-patch: Add a signature option (--signature) 2010-06-16 10:08:59 -07:00
diff.format-patch_--stdout_--no-numbered_initial..master format-patch: autonumber by default 2008-10-18 07:18:03 -07:00
diff.format-patch_--stdout_--numbered_initial..master format-patch: autonumber by default 2008-10-18 07:18:03 -07:00
diff.format-patch_--stdout_initial..master format-patch: autonumber by default 2008-10-18 07:18:03 -07:00
diff.format-patch_--stdout_initial..master^ format-patch: autonumber by default 2008-10-18 07:18:03 -07:00
diff.format-patch_--stdout_initial..side
diff.log_--decorate_--all Let --decorate show HEAD position 2009-10-12 16:22:35 -07:00
diff.log_--decorate=full_--all Let --decorate show HEAD position 2009-10-12 16:22:35 -07:00
diff.log_--patch-with-stat_--summary_master_--_dir_ log: do not print ellipses with --abbrev-commit 2009-02-13 17:18:22 -08:00
diff.log_--patch-with-stat_master log: do not print ellipses with --abbrev-commit 2009-02-13 17:18:22 -08:00
diff.log_--patch-with-stat_master_--_dir_ log: do not print ellipses with --abbrev-commit 2009-02-13 17:18:22 -08:00
diff.log_--root_--cc_--patch-with-stat_--summary_master log: do not print ellipses with --abbrev-commit 2009-02-13 17:18:22 -08:00
diff.log_--root_--patch-with-stat_--summary_master log: do not print ellipses with --abbrev-commit 2009-02-13 17:18:22 -08:00
diff.log_--root_--patch-with-stat_master log: do not print ellipses with --abbrev-commit 2009-02-13 17:18:22 -08:00
diff.log_--root_-c_--patch-with-stat_--summary_master log: do not print ellipses with --abbrev-commit 2009-02-13 17:18:22 -08:00
diff.log_--root_-p_master log: do not print ellipses with --abbrev-commit 2009-02-13 17:18:22 -08:00
diff.log_--root_master log: do not print ellipses with --abbrev-commit 2009-02-13 17:18:22 -08:00
diff.log_-GF_-p_--pickaxe-all_master diff/log -G<pattern>: tests 2010-08-31 14:30:29 -07:00
diff.log_-GF_-p_master diff/log -G<pattern>: tests 2010-08-31 14:30:29 -07:00
diff.log_-GF_master diff/log -G<pattern>: tests 2010-08-31 14:30:29 -07:00
diff.log_-m_-p_--first-parent_master t4013: add tests for log -p -m --first-parent 2010-03-09 01:11:18 -08:00
diff.log_-m_-p_master t4013: add tests for log -p -m --first-parent 2010-03-09 01:11:18 -08:00
diff.log_-p_--first-parent_master t4013: add tests for log -p -m --first-parent 2010-03-09 01:11:18 -08:00
diff.log_-p_master log: do not print ellipses with --abbrev-commit 2009-02-13 17:18:22 -08:00
diff.log_-S_F_master diff: parse separate options like -S foo 2010-08-06 09:14:22 -07:00
diff.log_-SF_-p_master
diff.log_-SF_master Clean up "git log" format with DIFF_FORMAT_NO_OUTPUT 2007-10-15 20:24:27 -04:00
diff.log_master log: do not print ellipses with --abbrev-commit 2009-02-13 17:18:22 -08:00
diff.rev-list_--children_HEAD Test rev-list --parents/--children 2009-02-20 00:02:48 -08:00
diff.rev-list_--parents_HEAD Test rev-list --parents/--children 2009-02-20 00:02:48 -08:00
diff.show_--first-parent_master show --first-parent/-m: do not default to --cc 2010-03-09 01:11:19 -08:00
diff.show_--patch-with-raw_side
diff.show_--patch-with-stat_--summary_side
diff.show_--patch-with-stat_side
diff.show_--root_initial
diff.show_--stat_--summary_side
diff.show_--stat_side
diff.show_-c_master show -c: show patch text 2010-03-09 01:11:18 -08:00
diff.show_-m_master show --first-parent/-m: do not default to --cc 2010-03-09 01:11:19 -08:00
diff.show_initial
diff.show_master log: do not print ellipses with --abbrev-commit 2009-02-13 17:18:22 -08:00
diff.show_side
diff.whatchanged_--patch-with-stat_--summary_master_--_dir_
diff.whatchanged_--patch-with-stat_master
diff.whatchanged_--patch-with-stat_master_--_dir_
diff.whatchanged_--root_--cc_--patch-with-stat_--summary_master log: do not print ellipses with --abbrev-commit 2009-02-13 17:18:22 -08:00
diff.whatchanged_--root_--patch-with-stat_--summary_master
diff.whatchanged_--root_--patch-with-stat_master
diff.whatchanged_--root_-c_--patch-with-stat_--summary_master log: do not print ellipses with --abbrev-commit 2009-02-13 17:18:22 -08:00
diff.whatchanged_--root_-p_master
diff.whatchanged_--root_master
diff.whatchanged_-p_master
diff.whatchanged_-SF_-p_master
diff.whatchanged_-SF_master
diff.whatchanged_master