<feed xmlns='http://www.w3.org/2005/Atom'>
<title>git/setup.c, branch v1.5.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.5.2</id>
<link rel='self' href='https://www.git.shady.money/git/atom?h=v1.5.2'/>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/'/>
<updated>2007-03-11T06:07:26Z</updated>
<entry>
<title>Merge branch 'maint'</title>
<updated>2007-03-11T06:07:26Z</updated>
<author>
<name>Junio C Hamano</name>
<email>junkio@cox.net</email>
</author>
<published>2007-03-11T06:07:26Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=ed287ab7fa71528e8de288988d1662eebae64002'/>
<id>urn:sha1:ed287ab7fa71528e8de288988d1662eebae64002</id>
<content type='text'>
* maint:
  git.el: Retrieve commit log information from .dotest directory.
  git.el: Avoid appending a signoff line that is already present.
  setup_git_directory_gently: fix off-by-one error
  user-manual: install user manual stylesheet with other web documents
  user-manual: fix rendering of history diagrams
  user-manual: fix missing colon in git-show example
  user-manual: fix inconsistent use of pull and merge
  user-manual: fix inconsistent example
  glossary: fix overoptimistic automatic linking of defined terms
  Documentation: s/seperator/separator/
  Adjust reflog filemode in shared repository
</content>
</entry>
<entry>
<title>setup_git_directory_gently: fix off-by-one error</title>
<updated>2007-03-11T05:47:45Z</updated>
<author>
<name>Matthias Lederhofer</name>
<email>matled@gmx.net</email>
</author>
<published>2007-03-11T01:35:00Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=96a5702409e193616ad7e56700dd6051ad324654'/>
<id>urn:sha1:96a5702409e193616ad7e56700dd6051ad324654</id>
<content type='text'>
don't tell getcwd that the buffer has one spare byte for an extra /

Signed-off-by: Matthias Lederhofer &lt;matled@gmx.net&gt;
Signed-off-by: Junio C Hamano &lt;junkio@cox.net&gt;
</content>
</entry>
<entry>
<title>Mechanical conversion to use prefixcmp()</title>
<updated>2007-02-21T06:03:15Z</updated>
<author>
<name>Junio C Hamano</name>
<email>junkio@cox.net</email>
</author>
<published>2007-02-20T09:53:29Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=cc44c7655fe2dd0cfb46e841156634fe622df397'/>
<id>urn:sha1:cc44c7655fe2dd0cfb46e841156634fe622df397</id>
<content type='text'>
This mechanically converts strncmp() to use prefixcmp(), but only when
the parameters match specific patterns, so that they can be verified
easily.  Leftover from this will be fixed in a separate step, including
idiotic conversions like

    if (!strncmp("foo", arg, 3))

  =&gt;

    if (!(-prefixcmp(arg, "foo")))

This was done by using this script in px.perl

   #!/usr/bin/perl -i.bak -p
   if (/strncmp\(([^,]+), "([^\\"]*)", (\d+)\)/ &amp;&amp; (length($2) == $3)) {
           s|strncmp\(([^,]+), "([^\\"]*)", (\d+)\)|prefixcmp($1, "$2")|;
   }
   if (/strncmp\("([^\\"]*)", ([^,]+), (\d+)\)/ &amp;&amp; (length($1) == $3)) {
           s|strncmp\("([^\\"]*)", ([^,]+), (\d+)\)|(-prefixcmp($2, "$1"))|;
   }

and running:

   $ git grep -l strncmp -- '*.c' | xargs perl px.perl

Signed-off-by: Junio C Hamano &lt;junkio@cox.net&gt;
</content>
</entry>
<entry>
<title>Do not verify filenames in a bare repository</title>
<updated>2007-01-21T03:10:26Z</updated>
<author>
<name>Johannes Schindelin</name>
<email>Johannes.Schindelin@gmx.de</email>
</author>
<published>2007-01-20T02:09:34Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=68025633e352264898de44ec4856552d9a3abece'/>
<id>urn:sha1:68025633e352264898de44ec4856552d9a3abece</id>
<content type='text'>
For example, it makes no sense to check the presence of a file
named "HEAD" when calling "git log HEAD" in a bare repository.

Noticed by Han-Wen Nienhuys.

Signed-off-by: Johannes Schindelin &lt;Johannes.Schindelin@gmx.de&gt;
</content>
</entry>
<entry>
<title>Detached HEAD (experimental)</title>
<updated>2007-01-08T11:02:11Z</updated>
<author>
<name>Junio C Hamano</name>
<email>junkio@cox.net</email>
</author>
<published>2007-01-02T07:31:08Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=c847f537125ceab3425205721fdaaa834e6d8a83'/>
<id>urn:sha1:c847f537125ceab3425205721fdaaa834e6d8a83</id>
<content type='text'>
This allows "git checkout v1.4.3" to dissociate the HEAD of
repository from any branch.  After this point, "git branch"
starts reporting that you are not on any branch.  You can go
back to an existing branch by saying "git checkout master", for
example.

This is still experimental.  While I think it makes sense to
allow commits on top of detached HEAD, it is rather dangerous
unless you are careful in the current form.  Next "git checkout
master" will obviously lose what you have done, so we might want
to require "git checkout -f" out of a detached HEAD if we find
that the HEAD commit is not an ancestor of any other branches.
There is no such safety valve implemented right now.

On the other hand, the reason the user did not start the ad-hoc
work on a new branch with "git checkout -b" was probably because
the work was of a throw-away nature, so the convenience of not
having that safety valve might be even better.  The user, after
accumulating some commits on top of a detached HEAD, can always
create a new branch with "git checkout -b" not to lose useful
work done while the HEAD was detached.

We'll see.

Signed-off-by: Junio C Hamano &lt;junkio@cox.net&gt;
</content>
</entry>
<entry>
<title>Automatically detect a bare git repository.</title>
<updated>2006-12-31T06:22:13Z</updated>
<author>
<name>Shawn O. Pearce</name>
<email>spearce@spearce.org</email>
</author>
<published>2006-12-31T04:30:19Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=ad1a382fbb3ecb1bb017854a470816c815cc46c9'/>
<id>urn:sha1:ad1a382fbb3ecb1bb017854a470816c815cc46c9</id>
<content type='text'>
Many users find it unfriendly that they can create a bare git
repository easily with `git clone --bare` but are then unable to
run simple commands like `git log` once they cd into that newly
created bare repository.  This occurs because we do not check to
see if the current working directory is a git repository.

Instead of failing out with "fatal: Not a git repository" we should
try to automatically detect if the current working directory is
a bare repository and use that for GIT_DIR, and fail out only if
that doesn't appear to be true.

We test the current working directory only after we have tried
searching up the directory tree.  This is to retain backwards
compatibility with our previous behavior on the off chance that
a user has a 'refs' and 'objects' subdirectories and a 'HEAD'
file that looks like a symref, all stored within a repository's
associated working directory.

This change also consolidates the validation logic between the case
of GIT_DIR being supplied and GIT_DIR not being supplied, cleaning
up the code.

Signed-off-by: Shawn O. Pearce &lt;spearce@spearce.org&gt;
Signed-off-by: Junio C Hamano &lt;junkio@cox.net&gt;
</content>
</entry>
<entry>
<title>Move deny_non_fast_forwards handling completely into receive-pack.</title>
<updated>2006-10-31T03:35:16Z</updated>
<author>
<name>Shawn Pearce</name>
<email>spearce@spearce.org</email>
</author>
<published>2006-10-30T22:35:18Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=6fb75bed5c4a6ce099a24e581ea327e9de3ab8b0'/>
<id>urn:sha1:6fb75bed5c4a6ce099a24e581ea327e9de3ab8b0</id>
<content type='text'>
The 'receive.denynonfastforwards' option has nothing to do with
the repository format version.  Since receive-pack already uses
git_config to initialize itself before executing any updates we
can use the normal configuration strategy and isolate the receive
specific variables away from the core variables.

Signed-off-by: Shawn O. Pearce &lt;spearce@spearce.org&gt;
Signed-off-by: Junio C Hamano &lt;junkio@cox.net&gt;
</content>
</entry>
<entry>
<title>add receive.denyNonFastforwards config variable</title>
<updated>2006-09-20T23:15:45Z</updated>
<author>
<name>Johannes Schindelin</name>
<email>Johannes.Schindelin@gmx.de</email>
</author>
<published>2006-09-20T23:07:54Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=11031d7e9f34f6a20ff4a4bd4fa3e5e3c0024a57'/>
<id>urn:sha1:11031d7e9f34f6a20ff4a4bd4fa3e5e3c0024a57</id>
<content type='text'>
If receive.denyNonFastforwards is set to true, git-receive-pack will deny
non fast-forwards, i.e. forced updates. Most notably, a push to a repository
which has that flag set will fail.

As a first user, 'git-init-db --shared' sets this flag, since in a shared
setup, you are most unlikely to want forced pushes to succeed.

Signed-off-by: Johannes Schindelin &lt;Johannes.Schindelin@gmx.de&gt;
Signed-off-by: Junio C Hamano &lt;junkio@cox.net&gt;
</content>
</entry>
<entry>
<title>Fix crash when GIT_DIR is invalid</title>
<updated>2006-08-04T18:30:19Z</updated>
<author>
<name>Johannes Schindelin</name>
<email>Johannes.Schindelin@gmx.de</email>
</author>
<published>2006-08-04T15:46:19Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=3a3c3fc42a021f11aa8f35dc40cc69d4d4af7224'/>
<id>urn:sha1:3a3c3fc42a021f11aa8f35dc40cc69d4d4af7224</id>
<content type='text'>
We used to test if a pointer was NULL, and if it was, try to access it.

Signed-off-by: Johannes Schindelin &lt;Johannes.Schindelin@gmx.de&gt;
Signed-off-by: Junio C Hamano &lt;junkio@cox.net&gt;
</content>
</entry>
<entry>
<title>setup_git_directory_gently: do not barf when GIT_DIR is given.</title>
<updated>2006-07-31T00:45:57Z</updated>
<author>
<name>Matthias Lederhofer</name>
<email>matled@gmx.net</email>
</author>
<published>2006-07-30T01:30:29Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=41e95f699088b14c6a949ec858499f98df4f34f6'/>
<id>urn:sha1:41e95f699088b14c6a949ec858499f98df4f34f6</id>
<content type='text'>
Earlier we barfed when GIT_DIR environment variable points at a
directory yet to be created, which made it impossible to use
configuration mechanism in "git-init-db".

Signed-off-by: Matthias Lederhofer &lt;matled@gmx.net&gt;
Signed-off-by: Junio C Hamano &lt;junkio@cox.net&gt;
</content>
</entry>
</feed>
