<feed xmlns='http://www.w3.org/2005/Atom'>
<title>git/cache.h, branch v1.7.9.2</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/git/git.git/
</subtitle>
<id>https://www.git.shady.money/git/atom?h=v1.7.9.2</id>
<link rel='self' href='https://www.git.shady.money/git/atom?h=v1.7.9.2'/>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/'/>
<updated>2012-02-21T23:13:16Z</updated>
<entry>
<title>Merge branch 'jk/git-dir-lookup' into maint</title>
<updated>2012-02-21T23:13:16Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2012-02-21T23:13:16Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=0cfba96121b9617668a7b4ad18e3ae3a19dc8755'/>
<id>urn:sha1:0cfba96121b9617668a7b4ad18e3ae3a19dc8755</id>
<content type='text'>
* jk/git-dir-lookup:
  standardize and improve lookup rules for external local repos
</content>
</entry>
<entry>
<title>Merge branch 'zj/term-columns' into maint</title>
<updated>2012-02-21T23:00:15Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2012-02-21T23:00:15Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=c17ff2a36160ae51a1cefa9fe8f067dbeb33e884'/>
<id>urn:sha1:c17ff2a36160ae51a1cefa9fe8f067dbeb33e884</id>
<content type='text'>
* zj/term-columns:
  pager: find out the terminal width before spawning the pager
</content>
</entry>
<entry>
<title>pager: find out the terminal width before spawning the pager</title>
<updated>2012-02-13T23:08:47Z</updated>
<author>
<name>Zbigniew Jędrzejewski-Szmek</name>
<email>zbyszek@in.waw.pl</email>
</author>
<published>2012-02-12T14:12:32Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=ad6c3739a33586ba15a8c5c245dcd59e8a31cef1'/>
<id>urn:sha1:ad6c3739a33586ba15a8c5c245dcd59e8a31cef1</id>
<content type='text'>
term_columns() checks for terminal width via ioctl(2) on the standard
output, but we spawn the pager too early for this check to be useful.

The effect of this buglet can be observed by opening a wide terminal and
running "git -p help --all", which still shows 80-column output, while
"git help --all" uses the full terminal width. Run the check before we
spawn the pager to fix this.

While at it, move term_columns() to pager.c and export it from cache.h so
that callers other than the help subsystem can use it.

Signed-off-by: Zbigniew Jędrzejewski-Szmek &lt;zbyszek@in.waw.pl&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>standardize and improve lookup rules for external local repos</title>
<updated>2012-02-03T00:41:55Z</updated>
<author>
<name>Jeff King</name>
<email>peff@peff.net</email>
</author>
<published>2012-02-02T21:59:13Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=b3256eb8b35937192e85725d0c2bcb422295790c'/>
<id>urn:sha1:b3256eb8b35937192e85725d0c2bcb422295790c</id>
<content type='text'>
When you specify a local repository on the command line of
clone, ls-remote, upload-pack, receive-pack, or upload-archive,
or in a request to git-daemon, we perform a little bit of
lookup magic, doing things like looking in working trees for
.git directories and appending ".git" for bare repos.

For clone, this magic happens in get_repo_path. For
everything else, it happens in enter_repo. In both cases,
there are some ambiguous or confusing cases that aren't
handled well, and there is one case that is not handled the
same by both methods.

This patch tries to provide (and test!) standard, sensible
lookup rules for both code paths. The intended changes are:

  1. When looking up "foo", we have always preferred
     a working tree "foo" (containing "foo/.git" over the
     bare "foo.git". But we did not prefer a bare "foo" over
     "foo.git". With this patch, we do so.

  2. We would select directories that existed but didn't
     actually look like git repositories. With this patch,
     we make sure a selected directory looks like a git
     repo. Not only is this more sensible in general, but it
     will help anybody who is negatively affected by change
     (1) negatively (e.g., if they had "foo.git" next to its
     separate work tree "foo", and expect to keep finding
     "foo.git" when they reference "foo").

  3. The enter_repo code path would, given "foo", look for
     "foo.git/.git" (i.e., do the ".git" append magic even
     for a repo with working tree). The clone code path did
     not; with this patch, they now behave the same.

In the unlikely case of a working tree overlaying a bare
repo (i.e., a ".git" directory _inside_ a bare repo), we
continue to treat it as a working tree (prefering the
"inner" .git over the bare repo). This is mainly because the
combination seems nonsensical, and I'd rather stick with
existing behavior on the off chance that somebody is relying
on it.

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>server_supports(): parse feature list more carefully</title>
<updated>2012-01-08T22:26:28Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2012-01-08T21:06:19Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=f47182c852601c045f62bd7f669360a920516311'/>
<id>urn:sha1:f47182c852601c045f62bd7f669360a920516311</id>
<content type='text'>
We have been carefully choosing feature names used in the protocol
extensions so that the vocabulary does not contain a word that is a
substring of another word, so it is not a real problem, but we have
recently added "quiet" feature word, which would mean we cannot later
add some other word with "quiet" (e.g. "quiet-push"), which is awkward.

Let's make sure that we can eventually be able to do so by teaching the
clients and servers that feature words consist of non whitespace
letters. This parser also allows us to later add features with parameters
e.g. "feature=1.5" (parameter values need to be quoted for whitespaces,
but we will worry about the detauls when we do introduce them).

Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
Signed-off-by: Clemens Buchacher &lt;drizzd@aon.at&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'jk/git-prompt'</title>
<updated>2011-12-22T19:27:23Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2011-12-22T19:27:23Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=ded408fd20e2fedb76850c9fa9bbaa26b888aa7c'/>
<id>urn:sha1:ded408fd20e2fedb76850c9fa9bbaa26b888aa7c</id>
<content type='text'>
* jk/git-prompt:
  contrib: add credential helper for OS X Keychain
  Makefile: OS X has /dev/tty
  Makefile: linux has /dev/tty
  credential: use git_prompt instead of git_getpass
  prompt: use git_terminal_prompt
  add generic terminal prompt function
  refactor git_getpass into generic prompt function
  move git_getpass to its own source file
  imap-send: don't check return value of git_getpass
  imap-send: avoid buffer overflow

Conflicts:
	Makefile
</content>
</entry>
<entry>
<title>Merge branch 'mh/ref-api'</title>
<updated>2011-12-20T21:25:53Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2011-12-20T21:25:53Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=8d68493f20db71abeb77adc251b2a116fe45cdaa'/>
<id>urn:sha1:8d68493f20db71abeb77adc251b2a116fe45cdaa</id>
<content type='text'>
* mh/ref-api:
  add_ref(): take a (struct ref_entry *) parameter
  create_ref_entry(): extract function from add_ref()
  repack_without_ref(): remove temporary
  resolve_gitlink_ref_recursive(): change to work with struct ref_cache
  Pass a (ref_cache *) to the resolve_gitlink_*() helper functions
  resolve_gitlink_ref(): improve docstring
  get_ref_dir(): change signature
  refs: change signatures of get_packed_refs() and get_loose_refs()
  is_dup_ref(): extract function from sort_ref_array()
  add_ref(): add docstring
  parse_ref_line(): add docstring
  is_refname_available(): remove the "quiet" argument
  clear_ref_array(): rename from free_ref_array()
  refs: rename parameters result -&gt; sha1
  refs: rename "refname" variables
  struct ref_entry: document name member

Conflicts:
	cache.h
	refs.c
</content>
</entry>
<entry>
<title>Merge branch 'jk/fetch-no-tail-match-refs'</title>
<updated>2011-12-20T00:05:55Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2011-12-20T00:05:55Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=b3ae9d8e57166c771926e3f55555bf248b71202a'/>
<id>urn:sha1:b3ae9d8e57166c771926e3f55555bf248b71202a</id>
<content type='text'>
* jk/fetch-no-tail-match-refs:
  connect.c: drop path_match function
  fetch-pack: match refs exactly
  t5500: give fully-qualified refs to fetch-pack
  drop "match" parameter from get_remote_heads
</content>
</entry>
<entry>
<title>Merge branch 'nd/resolve-ref'</title>
<updated>2011-12-20T00:05:50Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2011-12-20T00:05:50Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=2e05710a161e6287f239fae42b86b0cb46190834'/>
<id>urn:sha1:2e05710a161e6287f239fae42b86b0cb46190834</id>
<content type='text'>
* nd/resolve-ref:
  Rename resolve_ref() to resolve_ref_unsafe()
  Convert resolve_ref+xstrdup to new resolve_refdup function
  revert: convert resolve_ref() to read_ref_full()
</content>
</entry>
<entry>
<title>Merge branch 'jc/stream-to-pack'</title>
<updated>2011-12-17T06:33:40Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2011-12-17T06:33:40Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=48b303675aa238c209e527feadcbb7ba1c025c97'/>
<id>urn:sha1:48b303675aa238c209e527feadcbb7ba1c025c97</id>
<content type='text'>
* jc/stream-to-pack:
  bulk-checkin: replace fast-import based implementation
  csum-file: introduce sha1file_checkpoint
  finish_tmp_packfile(): a helper function
  create_tmp_packfile(): a helper function
  write_pack_header(): a helper function

Conflicts:
	pack.h
</content>
</entry>
</feed>
