summaryrefslogtreecommitdiff
path: root/Documentation
AgeCommit message (Collapse)AuthorFilesLines
2012-04-27status: add --columnLibravatar Nguyễn Thái Ngọc Duy2-0/+11
Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-04-27branch: add --columnLibravatar Nguyễn Thái Ngọc Duy2-0/+13
Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-04-27column: add dense layout supportLibravatar Nguyễn Thái Ngọc Duy1-0/+4
Normally all cells (and in turn columns) share the same width. This layout mode can waste space because one long item can stretch our all columns. With COL_DENSE enabled, column width is calculated indepdendently. All columns are shrunk to minimum, then it attempts to push cells of the last row over to the next column with hope that everything still fits even there's one row less. The process is repeated until the new layout cannot fit in given width any more, or there's only one row left (perfect!). Apparently, this mode consumes more cpu than the old one, but it makes better use of terminal space. For layouting one or two screens, cpu usage should not be detectable. This patch introduces option handling code besides layout modes and enable/disable to expose this feature as "dense". The feature can be turned off by specifying "nodense". Thanks-to: Ramsay Jones <ramsay@ramsay1.demon.co.uk> Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-04-27column: add columnar layoutLibravatar Nguyễn Thái Ngọc Duy1-0/+4
COL_COLUMN and COL_ROW fill column by column (or row by row respectively), given the terminal width and how many space between columns. All cells have equal width. Strings are supposed to be in UTF-8. Valid ANSI escape strings are OK. Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-04-27Add column layout skeleton and git-columnLibravatar Nguyễn Thái Ngọc Duy2-0/+71
A column option string consists of many token separated by either a space or a comma. A token belongs to one of three groups: - enabling: always, never and auto - layout mode: currently plain (which does not layout at all) - other future tuning flags git-column can be used to pipe output to from a command that wants column layout, but not to mess with its own output code. Simpler output code can be changed to use column layout code directly. Thanks-to: Ramsay Jones <ramsay@ramsay1.demon.co.uk> Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-02-23Update draft release notes to 1.7.10Libravatar Junio C Hamano1-1/+24
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-02-23Merge branch 'ld/git-p4-expanded-keywords'Libravatar Junio C Hamano1-0/+5
* ld/git-p4-expanded-keywords: : Teach git-p4 to unexpand $RCS$-like keywords that are embedded in : tracked contents in order to reduce unnecessary merge conflicts. git-p4: add initial support for RCS keywords
2012-02-23Merge branch 'jk/config-include'Libravatar Junio C Hamano3-0/+160
* jk/config-include: : An assignment to the include.path pseudo-variable causes the named file : to be included in-place when Git looks up configuration variables. config: add include directive config: eliminate config_exclusive_filename config: stop using config_exclusive_filename config: provide a version of git_config with more options config: teach git_config_rename_section a file argument config: teach git_config_set_multivar_in_file a default path config: copy the return value of prefix_filename t1300: add missing &&-chaining docs/api-config: minor clarifications docs: add a basic description of the config API
2012-02-23Merge branch 'pj/remote-set-branches-usage-fix'Libravatar Junio C Hamano1-1/+1
* pj/remote-set-branches-usage-fix: remote: fix set-branches usage and documentation Conflicts: builtin/remote.c
2012-02-23Merge branch 'maint'Libravatar Junio C Hamano1-0/+5
* maint: README: point to Documentation/SubmittingPatches Document merge.branchdesc configuration variable
2012-02-23git-p4: add initial support for RCS keywordsLibravatar Luke Diamand1-0/+5
RCS keywords cause problems for git-p4 as perforce always expands them (if +k is set) and so when applying the patch, git reports that the files have been modified by both sides, when in fact they haven't. This change means that when git-p4 detects a problem applying a patch, it will check to see if keyword expansion could be the culprit. If it is, it strips the keywords in the p4 repository so that they match what git is expecting. It then has another go at applying the patch. This behaviour is enabled with a new git-p4 configuration option and is off by default. Acked-by: Pete Wyckoff <pw@padd.com> Signed-off-by: Luke Diamand <luke@diamand.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-02-23Document merge.branchdesc configuration variableLibravatar Junio C Hamano1-0/+5
This was part of the "branch description" feature in the larger "help people communicate better during their pull based workflow" topic, but was never documented. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-02-22Sync with 1.7.9.2Libravatar Junio C Hamano1-1/+2
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-02-22Git 1.7.9.2Libravatar Junio C Hamano1-1/+2
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-02-21Update draft release notes to 1.7.10Libravatar Junio C Hamano1-40/+6
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-02-21Merge branch 'maint'Libravatar Junio C Hamano1-16/+55
* maint: Update draft release notes to 1.7.9.2 completion: Allow dash as the first character for __git_ps1
2012-02-21Update draft release notes to 1.7.9.2Libravatar Junio C Hamano1-16/+55
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-02-21Merge branch 'nd/diffstat-gramnum' into maintLibravatar Junio C Hamano2-3/+3
* nd/diffstat-gramnum: Use correct grammar in diffstat summary line
2012-02-20Update draft release notes to 1.7.10Libravatar Junio C Hamano1-24/+40
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-02-20Merge branch 'tg/tag-points-at'Libravatar Junio C Hamano1-1/+5
* tg/tag-points-at: builtin/tag.c: Fix a sparse warning tag: add --points-at list option
2012-02-20Merge branch 'maint'Libravatar Junio C Hamano1-0/+3
* maint: Update draft release notes to 1.7.9.2 gitweb: Fix 'grep' search for multiple matches in file
2012-02-20Update draft release notes to 1.7.9.2Libravatar Junio C Hamano1-0/+3
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-02-19remote: fix set-branches usage and documentationLibravatar Philip Jägenstedt1-1/+1
The canonical order of command line arguments is always to have dashed commands before other parameters, but the "git remote set-branches" subcommand was described to take "name" before an optional "--add". Signed-off-by: Philip Jägenstedt <philip@foolip.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-02-17config: add include directiveLibravatar Jeff King3-1/+47
It can be useful to split your ~/.gitconfig across multiple files. For example, you might have a "main" file which is used on many machines, but a small set of per-machine tweaks. Or you may want to make some of your config public (e.g., clever aliases) while keeping other data back (e.g., your name or other identifying information). Or you may want to include a number of config options in some subset of your repos without copying and pasting (e.g., you want to reference them from the .git/config of participating repos). This patch introduces an include directive for config files. It looks like: [include] path = /path/to/file This is syntactically backwards-compatible with existing git config parsers (i.e., they will see it as another config entry and ignore it unless you are looking up include.path). The implementation provides a "git_config_include" callback which wraps regular config callbacks. Callers can pass it to git_config_from_file, and it will transparently follow any include directives, passing all of the discovered options to the real callback. Include directives are turned on automatically for "regular" git config parsing. This includes calls to git_config, as well as calls to the "git config" program that do not specify a single file (e.g., using "-f", "--global", etc). They are not turned on in other cases, including: 1. Parsing of other config-like files, like .gitmodules. There isn't a real need, and I'd rather be conservative and avoid unnecessary incompatibility or confusion. 2. Reading single files via "git config". This is for two reasons: a. backwards compatibility with scripts looking at config-like files. b. inspection of a specific file probably means you care about just what's in that file, not a general lookup for "do we have this value anywhere at all". If that is not the case, the caller can always specify "--includes". 3. Writing files via "git config"; we want to treat include.* variables as literal items to be copied (or modified), and not expand them. So "git config --unset-all foo.bar" would operate _only_ on .git/config, not any of its included files (just as it also does not operate on ~/.gitconfig). Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-02-17config: provide a version of git_config with more optionsLibravatar Jeff King1-0/+12
Callers may want to provide a specific version of a file in which to look for config. Right now this can be done by setting the magic global config_exclusive_filename variable. By providing a version of git_config that takes a filename, we can take a step towards making this magic global go away. Furthermore, by providing a more "advanced" interface, we now have a a natural place to add new options for callers like git-config, which care about tweaking the specifics of config lookup, without disturbing the large number of "simple" users (i.e., every other part of git). The astute reader of this patch may notice that the logic for handling config_exclusive_filename was taken out of git_config_early, but added into git_config. This means that git_config_early will no longer respect config_exclusive_filename. That's OK, because the only other caller of git_config_early is check_repository_format_gently, but the only function which sets config_exclusive_filename is cmd_config, which does not call check_repository_format_gently (and if it did, it would have been a bug, anyway, as we would be checking the repository format in the wrong file). Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-02-17docs/api-config: minor clarificationsLibravatar Jeff King1-7/+8
The first change simply drops some parentheses to make a statement more clear. The seconds clarifies that almost nobody wants to call git_config_early. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-02-16Sync with maintLibravatar Junio C Hamano2-3/+30
2012-02-16Update draft release notes to 1.7.9.2Libravatar Junio C Hamano1-0/+27
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-02-16man: rearrange git synopsis to fit in 80 linesLibravatar Zbigniew Jędrzejewski-Szmek1-3/+3
The line was extended in 2dd8c3 ('git: add --info-path and --man-path options'), and the formatted man output stopped fitting into the 80 column window. Signed-off-by: Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-02-14Sync with 1.7.9.1Libravatar Junio C Hamano3-7/+13
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-02-14Git 1.7.9.1Libravatar Junio C Hamano2-1/+13
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-02-13Sync with maintLibravatar Junio C Hamano2-25/+20
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-02-13Update draft release notes to 1.7.9.1Libravatar Junio C Hamano1-3/+19
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-02-12Update draft release notes to 1.7.10Libravatar Junio C Hamano1-1/+40
Again this round mostly consists of fixes for 1.7.9 in preparation for merging these topics down to maint for 1.7.9.1 Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-02-12Merge branch 'nd/diffstat-gramnum'Libravatar Junio C Hamano2-3/+3
* nd/diffstat-gramnum: Use correct grammar in diffstat summary line
2012-02-10Update draft release notes to 1.7.10Libravatar Junio C Hamano1-1/+22
Document bunch of bugfix topics to be merged down to 'maint' soonish for 1.7.9.1 maintenance release. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-02-10Sync with maintLibravatar Junio C Hamano2-36/+17
2012-02-10Update draft release notes to 1.7.9.1Libravatar Junio C Hamano1-0/+17
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-02-10Merge branch 'jc/maint-request-pull-for-tag' into maintLibravatar Junio C Hamano1-2/+2
* jc/maint-request-pull-for-tag: request-pull: explicitly ask tags/$name to be pulled
2012-02-08tag: add --points-at list optionLibravatar Tom Grennan1-1/+5
This filters the list for tags of the given object. Example, john$ git tag v1.0-john v1.0 john$ git tag -l --points-at v1.0 v1.0-john v1.0 Signed-off-by: Tom Grennan <tmgrennan@gmail.com> Reviewed-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-02-07Update draft release notes to 1.7.10Libravatar Junio C Hamano1-1/+12
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-02-07Merge branch 'jc/maint-request-pull-for-tag'Libravatar Junio C Hamano1-2/+2
* jc/maint-request-pull-for-tag: request-pull: explicitly ask tags/$name to be pulled
2012-02-06docs: add a basic description of the config APILibravatar Jeff King1-0/+101
This wasn't documented at all; this is pretty bare-bones, but it should at least give new git hackers a basic idea of how the reading side works. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-02-06Sync with maintLibravatar Junio C Hamano2-1/+21
2012-02-06Prepare for 1.7.9.1Libravatar Junio C Hamano1-0/+19
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-02-05Sync with 1.7.6.6Libravatar Junio C Hamano1-1/+2
* maint-1.7.8: Git 1.7.6.6 imap-send: remove dead code
2012-02-05Sync with 1.7.6.6Libravatar Junio C Hamano1-1/+2
* maint-1.7.7: Git 1.7.6.6 imap-send: remove dead code
2012-02-05Sync with 1.7.6.6Libravatar Junio C Hamano1-1/+2
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-02-05Git 1.7.6.6Libravatar Junio C Hamano1-1/+2
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-02-03Use correct grammar in diffstat summary lineLibravatar Nguyễn Thái Ngọc Duy2-3/+3
"git diff --stat" and "git apply --stat" now learn to print the line "%d files changed, %d insertions(+), %d deletions(-)" in singular form whenever applicable. "0 insertions" and "0 deletions" are also omitted unless they are both zero. This matches how versions of "diffstat" that are not prehistoric produced their output, and also makes this line translatable. [jc: with help from Thomas Dickey in archaeology of "diffstat"] [jc: squashed Jonathan's updates to illustrations in tutorials and a test] Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>