···393393394394Learn to use format-patch and send-email if possible. These commands
395395are optimized for the workflow of sending patches, avoiding many ways
396396-your existing e-mail client that is optimized for "multipart/*" mime
397397-type e-mails to corrupt and render your patches unusable.
396396+your existing e-mail client (often optimized for "multipart/*" MIME
397397+type e-mails) might render your patches unusable.
398398399399People on the Git mailing list need to be able to read and
400400comment on the changes you are submitting. It is important for
···515515516516 git://git.ozlabs.org/~paulus/gitk
517517518518- Those who are interested in improve gitk can volunteer to help Paul
519519- in maintaining it cf. <YntxL/fTplFm8lr6@cleo>.
518518+ Those who are interested in improving gitk can volunteer to help Paul
519519+ maintain it, cf. <YntxL/fTplFm8lr6@cleo>.
520520521521- `po/` comes from the localization coordinator, Jiang Xin:
522522···556556557557In any time between the (2)-(3) cycle, the maintainer may pick it up
558558from the list and queue it to `seen`, in order to make it easier for
559559-people play with it without having to pick up and apply the patch to
559559+people to play with it without having to pick up and apply the patch to
560560their trees themselves.
561561562562[[patch-status]]
+1-1
Documentation/config/transfer.txt
···2121 system.
2222* The git programs will pass the full URL to one another as arguments
2323 on the command-line, meaning the credentials will be exposed to other
2424- users on OS's or systems that allow other users to see the full
2424+ unprivileged users on systems that allow them to see the full
2525 process list of other users. On linux the "hidepid" setting
2626 documented in procfs(5) allows for configuring this behavior.
2727+
+1-1
Documentation/diff-options.txt
···301301302302-z::
303303ifdef::git-log[]
304304- Separate the commits with NULs instead of with new newlines.
304304+ Separate the commits with NULs instead of newlines.
305305+
306306Also, when `--raw` or `--numstat` has been given, do not munge
307307pathnames and use NULs as output field terminators.
+1-1
Documentation/git-branch.txt
···324324 multiple times, in which case the last key becomes the primary
325325 key. The keys supported are the same as those in `git
326326 for-each-ref`. Sort order defaults to the value configured for the
327327- `branch.sort` variable if exists, or to sorting based on the
327327+ `branch.sort` variable if it exists, or to sorting based on the
328328 full refname (including `refs/...` prefix). This lists
329329 detached HEAD (if present) first, then local branches and
330330 finally remote-tracking branches. See linkgit:git-config[1].
+1-1
Documentation/git-range-diff.txt
···166166167167In this example, there are 3 old and 3 new commits, where the developer
168168removed the 3rd, added a new one before the first two, and modified the
169169-commit message of the 2nd commit as well its diff.
169169+commit message of the 2nd commit as well as its diff.
170170171171When the output goes to a terminal, it is color-coded by default, just
172172like regular `git diff`'s output. In addition, the first line (adding a
+3-3
Documentation/git.txt
···9696 to avoid ambiguity with `<name>` containing one.
9797+
9898This is useful for cases where you want to pass transitory
9999-configuration options to git, but are doing so on OS's where
100100-other processes might be able to read your cmdline
101101-(e.g. `/proc/self/cmdline`), but not your environ
9999+configuration options to git, but are doing so on operating systems
100100+where other processes might be able to read your command line
101101+(e.g. `/proc/self/cmdline`), but not your environment
102102(e.g. `/proc/self/environ`). That behavior is the default on
103103Linux, but may not be on your system.
104104+
+2-2
Documentation/gitattributes.txt
···11511151^^^^^^^^^^^^^^^^^^^^^^
1152115211531153This attribute controls the length of conflict markers left in
11541154-the work tree file during a conflicted merge. Only setting to
11551155-the value to a positive integer has any meaningful effect.
11541154+the work tree file during a conflicted merge. Only a positive
11551155+integer has a meaningful effect.
1156115611571157For example, this line in `.gitattributes` can be used to tell the merge
11581158machinery to leave much longer (instead of the usual 7-character-long)
+1-1
Documentation/giteveryday.txt
···229229 git am -3 -k`
230230231231An alternate participant submission mechanism is using the
232232-`git request-pull` or pull-request mechanisms (e.g as used on
232232+`git request-pull` or pull-request mechanisms (e.g. as used on
233233GitHub (www.github.com) to notify your upstream of your
234234contribution.
235235
+2-2
contrib/README
···2323lesser degree various foreign SCM interfaces, so you know the
2424drill.
25252626-I expect that things that start their life in the contrib/ area
2626+I expect things that start their life in the contrib/ area
2727to graduate out of contrib/ once they mature, either by becoming
2828projects on their own, or moving to the toplevel directory. On
2929the other hand, I expect I'll be proposing removal of disused
···31313232If you have new things to add to this area, please first propose
3333it on the git mailing list, and after a list discussion proves
3434-there are some general interests (it does not have to be a
3434+there is general interest (it does not have to be a
3535list-wide consensus for a tool targeted to a relatively narrow
3636audience -- for example I do not work with projects whose
3737upstream is svn, so I have no use for git-svn myself, but it is
+1-1
fsmonitor--daemon.h
···9999 * to only mean an external GITDIR referenced by a ".git" file.
100100 *
101101 * The platform FS event backends will receive watch-specific
102102- * relative paths (except for those OS's that always emit absolute
102102+ * relative paths (except for those OSes that always emit absolute
103103 * paths). We use the following enum and routines to classify each
104104 * path so that we know how to handle it. There is a slight asymmetry
105105 * here because ".git/" is inside the working directory and the
+4-4
strbuf.h
···1212struct string_list;
13131414/**
1515- * strbuf's are meant to be used with all the usual C string and memory
1515+ * strbufs are meant to be used with all the usual C string and memory
1616 * APIs. Given that the length of the buffer is known, it's often better to
1717- * use the mem* functions than a str* one (memchr vs. strchr e.g.).
1717+ * use the mem* functions than a str* one (e.g., memchr vs. strchr).
1818 * Though, one has to be careful about the fact that str* functions often
1919 * stop on NULs and that strbufs may have embedded NULs.
2020 *
···2424 * strbufs have some invariants that are very important to keep in mind:
2525 *
2626 * - The `buf` member is never NULL, so it can be used in any usual C
2727- * string operations safely. strbuf's _have_ to be initialized either by
2727+ * string operations safely. strbufs _have_ to be initialized either by
2828 * `strbuf_init()` or by `= STRBUF_INIT` before the invariants, though.
2929 *
3030 * Do *not* assume anything on what `buf` really is (e.g. if it is
···3737 *
3838 * - The `buf` member is a byte array that has at least `len + 1` bytes
3939 * allocated. The extra byte is used to store a `'\0'`, allowing the
4040- * `buf` member to be a valid C-string. Every strbuf function ensure this
4040+ * `buf` member to be a valid C-string. All strbuf functions ensure this
4141 * invariant is preserved.
4242 *
4343 * NOTE: It is OK to "play" with the buffer directly if you work it this
+15-16
t/README
···262262substrings or globs or individual test numbers or ranges with an
263263optional negation prefix (of '!') that define what tests in a test
264264suite to include (or exclude, if negated) in the run. A range is two
265265-numbers separated with a dash and matches a range of tests with both
266266-ends been included. You may omit the first or the second number to
265265+numbers separated with a dash and specifies an inclusive range of tests
266266+to run. You may omit the first or the second number to
267267mean "from the first test" or "up to the very last test" respectively.
268268269269The argument to --run is split on commas into separate strings,
···274274on all tests that match either the glob *rebase* or the glob
275275*merge?cherry-pick*.
276276277277-If --run starts with an unprefixed number or range the initial
278278-set of tests to run is empty. If the first item starts with '!'
277277+If --run starts with an unprefixed number or range, the initial
278278+set of tests to run is empty. If the first item starts with '!',
279279all the tests are added to the initial set. After initial set is
280280-determined every test number or range is added or excluded from
280280+determined, every test number or range is added or excluded from
281281the set one by one, from left to right.
282282283283For example, to run only tests up to a specific test (21), one
···579579580580Recommended style
581581-----------------
582582-Here are some recommented styles when writing test case.
583582584584- - Keep test title the same line with test helper function itself.
583583+ - Keep the test_expect_* function call and test title on
584584+ the same line.
585585586586- Take test_expect_success helper for example, write it like:
586586+ For example, with test_expect_success, write it like:
587587588588 test_expect_success 'test title' '
589589 ... test body ...
···595595 'test title' \
596596 '... test body ...'
597597598598+ - End the line with an opening single quote.
598599599599- - End the line with a single quote.
600600-601601- - Indent the body of here-document, and use "<<-" instead of "<<"
600600+ - Indent here-document bodies, and use "<<-" instead of "<<"
602601 to strip leading TABs used for indentation:
603602604603 test_expect_success 'test something' '
···624623 '
625624626625 - Quote or escape the EOF delimiter that begins a here-document if
627627- there is no parameter and other expansion in it, to signal readers
626626+ there is no parameter or other expansion in it, to signal readers
628627 that they can skim it more casually:
629628630629 cmd <<-\EOF
···638637Here are a few examples of things you probably should and shouldn't do
639638when writing tests.
640639641641-Here are the "do's:"
640640+The "do's:"
642641643642 - Put all code inside test_expect_success and other assertions.
644643···12371236because the things the very basic core test tries to achieve is
12381237to serve as a basis for people who are changing the Git internals
12391238drastically. For these people, after making certain changes,
12401240-not seeing failures from the basic test _is_ a failure. And
12411241-such drastic changes to the core Git that even changes these
12391239+not seeing failures from the basic test _is_ a failure. Any
12401240+Git core changes so drastic that they change even these
12421241otherwise supposedly stable object IDs should be accompanied by
12431242an update to t0000-basic.sh.
12441243···12481247hardcoded the object IDs like t0000-basic.sh does, that defeats
12491248the purpose of t0000-basic.sh, which is to isolate that level of
12501249validation in one place. Your test also ends up needing
12511251-updating when such a change to the internal happens, so do _not_
12501250+an update whenever the internals change, so do _not_
12521251do it and leave the low level of validation to t0000-basic.sh.
1253125212541253Test coverage