<feed xmlns='http://www.w3.org/2005/Atom'>
<title>git/Documentation/technical, branch v2.11.2</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/git/git.git/
</subtitle>
<id>https://git.shady.money/git/atom?h=v2.11.2</id>
<link rel='self' href='https://git.shady.money/git/atom?h=v2.11.2'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/'/>
<updated>2017-01-19T20:18:43Z</updated>
<entry>
<title>documentation: retire unfinished documentation</title>
<updated>2017-01-19T20:18:43Z</updated>
<author>
<name>Stefan Beller</name>
<email>sbeller@google.com</email>
</author>
<published>2017-01-19T03:18:54Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=830c912a0ed5d0771e9043cd51b87322230c8b6f'/>
<id>urn:sha1:830c912a0ed5d0771e9043cd51b87322230c8b6f</id>
<content type='text'>
When looking for documentation for a specific function, you may be tempted
to run

  git -C Documentation grep index_name_pos

only to find the file technical/api-in-core-index.txt, which doesn't
help for understanding the given function. It would be better to not find
these functions in the documentation, such that people directly dive into
the code instead.

In the previous patches we have documented
* index_name_pos()
* remove_index_entry_at()
* add_[file_]to_index()
in cache.h

We already have documentation for:
* add_index_entry()
* read_index()

Which leaves us with a TODO for:
* cache -&gt; the_index macros
* refresh_index()
* discard_index()
* ie_match_stat() and ie_modified(); how they are different and when to
  use which.
* write_index() that was renamed to write_locked_index
* cache_tree_invalidate_path()
* cache_tree_update()

Signed-off-by: Stefan Beller &lt;sbeller@google.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'nd/shallow-deepen'</title>
<updated>2016-10-10T21:03:50Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2016-10-10T21:03:50Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=a460ea4a3cb1dad253604b5e2aeaa161637453a9'/>
<id>urn:sha1:a460ea4a3cb1dad253604b5e2aeaa161637453a9</id>
<content type='text'>
The existing "git fetch --depth=&lt;n&gt;" option was hard to use
correctly when making the history of an existing shallow clone
deeper.  A new option, "--deepen=&lt;n&gt;", has been added to make this
easier to use.  "git clone" also learned "--shallow-since=&lt;date&gt;"
and "--shallow-exclude=&lt;tag&gt;" options to make it easier to specify
"I am interested only in the recent N months worth of history" and
"Give me only the history since that version".

* nd/shallow-deepen: (27 commits)
  fetch, upload-pack: --deepen=N extends shallow boundary by N commits
  upload-pack: add get_reachable_list()
  upload-pack: split check_unreachable() in two, prep for get_reachable_list()
  t5500, t5539: tests for shallow depth excluding a ref
  clone: define shallow clone boundary with --shallow-exclude
  fetch: define shallow boundary with --shallow-exclude
  upload-pack: support define shallow boundary by excluding revisions
  refs: add expand_ref()
  t5500, t5539: tests for shallow depth since a specific date
  clone: define shallow clone boundary based on time with --shallow-since
  fetch: define shallow boundary with --shallow-since
  upload-pack: add deepen-since to cut shallow repos based on time
  shallow.c: implement a generic shallow boundary finder based on rev-list
  fetch-pack: use a separate flag for fetch in deepening mode
  fetch-pack.c: mark strings for translating
  fetch-pack: use a common function for verbose printing
  fetch-pack: use skip_prefix() instead of starts_with()
  upload-pack: move rev-list code out of check_non_tip()
  upload-pack: make check_non_tip() clean things up on error
  upload-pack: tighten number parsing at "deepen" lines
  ...
</content>
</entry>
<entry>
<title>sha1_array: let callbacks interrupt iteration</title>
<updated>2016-09-26T18:46:41Z</updated>
<author>
<name>Jeff King</name>
<email>peff@peff.net</email>
</author>
<published>2016-09-26T12:00:29Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=16ddcd403bdd74f47f3ae1a7e58a01e36e54a7d7'/>
<id>urn:sha1:16ddcd403bdd74f47f3ae1a7e58a01e36e54a7d7</id>
<content type='text'>
The callbacks for iterating a sha1_array must have a void
return.  This is unlike our usual for_each semantics, where
a callback may interrupt iteration and have its value
propagated. Let's switch it to the usual form, which will
enable its use in more places (e.g., where we are replacing
an existing iteration with a different data structure).

Signed-off-by: Jeff King &lt;peff@peff.net&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'ls/packet-line-protocol-doc-fix'</title>
<updated>2016-08-31T17:03:51Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2016-08-31T17:03:51Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=58e72a2179361bff1d621fd2af403b8766323156'/>
<id>urn:sha1:58e72a2179361bff1d621fd2af403b8766323156</id>
<content type='text'>
Correct an age-old calco (is that a typo-like word for calc)
in the documentation.

* ls/packet-line-protocol-doc-fix:
  pack-protocol: fix maximum pkt-line size
</content>
</entry>
<entry>
<title>pack-protocol: fix maximum pkt-line size</title>
<updated>2016-08-30T18:00:29Z</updated>
<author>
<name>Lars Schneider</name>
<email>larsxschneider@gmail.com</email>
</author>
<published>2016-08-29T17:55:09Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=7841c4801ce51f1f62d376d164372e8677c6bc94'/>
<id>urn:sha1:7841c4801ce51f1f62d376d164372e8677c6bc94</id>
<content type='text'>
According to LARGE_PACKET_MAX in pkt-line.h the maximal length of a
pkt-line packet is 65520 bytes. The pkt-line header takes 4 bytes and
therefore the pkt-line data component must not exceed 65516 bytes.

Signed-off-by: Lars Schneider &lt;larsxschneider@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'jc/hashmap-doc-init'</title>
<updated>2016-08-08T21:48:45Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2016-08-08T21:48:45Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=16f0cb2dd86aeded6a693db3a9881e43c4f95087'/>
<id>urn:sha1:16f0cb2dd86aeded6a693db3a9881e43c4f95087</id>
<content type='text'>
The API documentation for hashmap was unclear if hashmap_entry
can be safely discarded without any other consideration.  State
that it is safe to do so.

* jc/hashmap-doc-init:
  hashmap: clarify that hashmap_entry can safely be discarded
</content>
</entry>
<entry>
<title>Merge branch 'sb/pack-protocol-doc-nak'</title>
<updated>2016-08-04T21:39:16Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2016-08-04T21:39:16Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=10881f076e19fbd0fa7b753b7c6c8203b419be83'/>
<id>urn:sha1:10881f076e19fbd0fa7b753b7c6c8203b419be83</id>
<content type='text'>
A doc update.

* sb/pack-protocol-doc-nak:
  Documentation: pack-protocol correct NAK response
</content>
</entry>
<entry>
<title>hashmap: clarify that hashmap_entry can safely be discarded</title>
<updated>2016-08-02T21:34:17Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2016-08-02T18:04:05Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=54ba5a1a16c0306bda1c304a341b9e4e7ab44684'/>
<id>urn:sha1:54ba5a1a16c0306bda1c304a341b9e4e7ab44684</id>
<content type='text'>
The API documentation said that the hashmap_entry structure to be
embedded in the caller's structure is to be treated as opaque, which
left the reader wondering if it can safely be discarded when it no
longer is necessary.  If the hashmap_entry structure had references
to external resources such as allocated memory or an open file
descriptor, merely free(3)ing the containing structure (when the
caller's structure is on the heap) or letting it go out of scope
(when it is on the stack) would end up leaking the external
resource.

Document that there is no need for hashmap_entry_clear() that
corresponds to hashmap_entry_init() to give the API users a little
bit of peace of mind.

Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Documentation: pack-protocol correct NAK response</title>
<updated>2016-07-22T20:31:55Z</updated>
<author>
<name>Stefan Beller</name>
<email>sbeller@google.com</email>
</author>
<published>2016-07-22T20:28:20Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=280abfd4f5055922e8abcbb988fa0a8df0eef128'/>
<id>urn:sha1:280abfd4f5055922e8abcbb988fa0a8df0eef128</id>
<content type='text'>
In the transport protocol we use NAK to signal the non existence of a
common base, so fix the documentation. This helps readers of the document,
as they don't have to wonder about the difference between NAK and NACK.
As NACK is used in git archive and upload-archive, this is easy to get
wrong.

Signed-off-by: Stefan Beller &lt;sbeller@google.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>receive-pack: implement advertising and receiving push options</title>
<updated>2016-07-14T22:50:40Z</updated>
<author>
<name>Stefan Beller</name>
<email>sbeller@google.com</email>
</author>
<published>2016-07-14T21:49:46Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=c714e45f87301562b940e3621431ed7f7fbd16e5'/>
<id>urn:sha1:c714e45f87301562b940e3621431ed7f7fbd16e5</id>
<content type='text'>
The pre/post receive hook may be interested in more information from the
user. This information can be transmitted when both client and server
support the "push-options" capability, which when used is a phase directly
after update commands ended by a flush pkt.

Similar to the atomic option, the server capability can be disabled via
the `receive.advertisePushOptions` config variable. While documenting
this, fix a nit in the `receive.advertiseAtomic` wording.

Signed-off-by: Stefan Beller &lt;sbeller@google.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
</feed>
