git-commit-vandalism/Documentation/git-stripspace.txt
Junio C Hamano eff80a9fd9 Allow custom "comment char"
Some users do want to write a line that begin with a pound sign, #,
in their commit log message.  Many tracking system recognise
a token of #<bugid> form, for example.

The support we offer these use cases is not very friendly to the end
users.  They have a choice between

 - Don't do it.  Avoid such a line by rewrapping or indenting; and

 - Use --cleanup=whitespace but remove all the hint lines we add.

Give them a way to set a custom comment char, e.g.

    $ git -c core.commentchar="%" commit

so that they do not have to do either of the two workarounds.

[jc: although I started the topic, all the tests and documentation
updates, many of the call sites of the new strbuf_add_commented_*()
functions, and the change to git-submodule.sh scripted Porcelain are
from Ralf.]

Signed-off-by: Junio C Hamano <gitster@pobox.com>
Signed-off-by: Ralf Thielow <ralf.thielow@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-01-16 12:48:22 -08:00

93 lines
1.8 KiB
Plaintext

git-stripspace(1)
=================
NAME
----
git-stripspace - Remove unnecessary whitespace
SYNOPSIS
--------
[verse]
'git stripspace' [-s | --strip-comments] < input
DESCRIPTION
-----------
Clean the input in the manner used by 'git' for text such as commit
messages, notes, tags and branch descriptions.
With no arguments, this will:
- remove trailing whitespace from all lines
- collapse multiple consecutive empty lines into one empty line
- remove empty lines from the beginning and end of the input
- add a missing '\n' to the last line if necessary.
In the case where the input consists entirely of whitespace characters, no
output will be produced.
*NOTE*: This is intended for cleaning metadata, prefer the `--whitespace=fix`
mode of linkgit:git-apply[1] for correcting whitespace of patches or files in
the repository.
OPTIONS
-------
-s::
--strip-comments::
Skip and remove all lines starting with comment character (default '#').
-c::
--comment-lines::
Prepend comment character and blank to each line. Lines will automatically
be terminated with a newline. On empty lines, only the comment character
will be prepended.
EXAMPLES
--------
Given the following noisy input with '$' indicating the end of a line:
--------
|A brief introduction $
| $
|$
|A new paragraph$
|# with a commented-out line $
|explaining lots of stuff.$
|$
|# An old paragraph, also commented-out. $
| $
|The end.$
| $
---------
Use 'git stripspace' with no arguments to obtain:
--------
|A brief introduction$
|$
|A new paragraph$
|# with a commented-out line$
|explaining lots of stuff.$
|$
|# An old paragraph, also commented-out.$
|$
|The end.$
---------
Use 'git stripspace --strip-comments' to obtain:
--------
|A brief introduction$
|$
|A new paragraph$
|explaining lots of stuff.$
|$
|The end.$
---------
GIT
---
Part of the linkgit:git[1] suite