<feed xmlns='http://www.w3.org/2005/Atom'>
<title>git/git-clone.sh, branch v1.3.2</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/git/git.git/
</subtitle>
<id>https://git.shady.money/git/atom?h=v1.3.2</id>
<link rel='self' href='https://git.shady.money/git/atom?h=v1.3.2'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/'/>
<updated>2006-04-13T23:45:48Z</updated>
<entry>
<title>Shell utilities: Guard against expr' magic tokens.</title>
<updated>2006-04-13T23:45:48Z</updated>
<author>
<name>Mark Wooding</name>
<email>mdw@distorted.org.uk</email>
</author>
<published>2006-04-13T22:01:24Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=f327dbced25a3c6fcc0b84d2d6adffa9343b09f0'/>
<id>urn:sha1:f327dbced25a3c6fcc0b84d2d6adffa9343b09f0</id>
<content type='text'>
Some words, e.g., `match', are special to expr(1), and cause strange
parsing effects.  Track down all uses of expr and mangle the arguments
so that this isn't a problem.

Signed-off-by: Mark Wooding &lt;mdw@distorted.org.uk&gt;
Signed-off-by: Junio C Hamano &lt;junkio@cox.net&gt;
</content>
</entry>
<entry>
<title>git-clone: fix handling of upsteram whose HEAD does not point at master.</title>
<updated>2006-04-03T05:22:27Z</updated>
<author>
<name>Junio C Hamano</name>
<email>junkio@cox.net</email>
</author>
<published>2006-04-02T23:25:01Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=c72112e6e1593bd77132a815ba484d0ff880a7b4'/>
<id>urn:sha1:c72112e6e1593bd77132a815ba484d0ff880a7b4</id>
<content type='text'>
When cloning from a remote repository that has master, main, and
origin branches _and_ with the HEAD pointing at main branch, we
did quite confused things during clone.  So this cleans things
up.  The behaviour is a bit different between separate remotes/
layout and the mixed branches layout.

The newer layout with $GIT_DIR/refs/remotes/$origin/, things are
simpler and more transparent:

 - remote branches are copied to refs/remotes/$origin/.

 - HEAD points at the branch with the same name as the remote
   HEAD points at, and starts at where the remote HEAD points at.

 - $GIT_DIR/remotes/$origin file is set up to fetch all remote
   branches, and merge the branch HEAD pointed at at the time of
   the cloning.

Everything-in-refs/heads layout was the more confused one, but
cleaned up like this:

 - remote branches are copied to refs/heads, but the branch
   "$origin" is not copied, instead a copy of the branch the
   remote HEAD points at is created there.

 - HEAD points at the branch with the same name as the remote
   HEAD points at, and starts at where the remote HEAD points at.

 - $GIT_DIR/remotes/$origin file is set up to fetch all remote
   branches except "$origin", and merge the branch HEAD pointed
   at at the time of the cloning.

With this, the remote has master, main and origin, and its HEAD
points at main, you could:

	git clone $URL --origin upstream

to use refs/heads/upstream as the tracking branch for remote
"main", and your primary working branch will also be "main".
"master" and "origin" are used to track the corresponding remote
branches and with this setup they do not have any special meaning.

Signed-off-by: Junio C Hamano &lt;junkio@cox.net&gt;
</content>
</entry>
<entry>
<title>git-clone: exit early if repo isn't specified</title>
<updated>2006-03-30T23:31:21Z</updated>
<author>
<name>Yasushi SHOJI</name>
<email>yashi@atmark-techno.com</email>
</author>
<published>2006-03-30T17:01:23Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=ef5b4eabb6da7cead197e387589896345d3dfbc6'/>
<id>urn:sha1:ef5b4eabb6da7cead197e387589896345d3dfbc6</id>
<content type='text'>
git-clone without a repo isn't useful at all.  print message and get
out asap.

This patch also move the variable 'local' to where other variables are
initialized.

Signed-off-by: Yasushi SHOJI &lt;yashi@atmark-techno.com&gt;
Signed-off-by: Junio C Hamano &lt;junkio@cox.net&gt;
</content>
</entry>
<entry>
<title>Make git-clone to take long double-dashed origin option (--origin)</title>
<updated>2006-03-30T23:31:03Z</updated>
<author>
<name>Yasushi SHOJI</name>
<email>yashi@atmark-techno.com</email>
</author>
<published>2006-03-30T17:00:43Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=98a4fef3f28e48d12a4fecd5cf97daa774c1e5bc'/>
<id>urn:sha1:98a4fef3f28e48d12a4fecd5cf97daa774c1e5bc</id>
<content type='text'>
git-clone currently take option '-o' to specify origin.  this patch
makes git-clone to take double-dashed option '--origin' and other
abbreviations in addtion to the current single-dashed option.

[jc: with minor fixups]

Signed-off-by: Yasushi SHOJI &lt;yashi@atmark-techno.com&gt;
Signed-off-by: Junio C Hamano &lt;junkio@cox.net&gt;
</content>
</entry>
<entry>
<title>git-clone: typofix.</title>
<updated>2006-03-22T08:50:32Z</updated>
<author>
<name>Junio C Hamano</name>
<email>junkio@cox.net</email>
</author>
<published>2006-03-22T08:23:16Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=4c2e98d6ce47aa9fcc1598c68e630f371cd4f8cb'/>
<id>urn:sha1:4c2e98d6ce47aa9fcc1598c68e630f371cd4f8cb</id>
<content type='text'>
The traditional one created refs/origin by mistake, not
refs/heads/origin.  Also it mistakenly failed to prevent
$origin from being listed twice in remotes/origin file.

Signed-off-by: Junio C Hamano &lt;junkio@cox.net&gt;
</content>
</entry>
<entry>
<title>clone: record the remote primary branch with remotes/$origin/HEAD</title>
<updated>2006-03-21T10:02:46Z</updated>
<author>
<name>Junio C Hamano</name>
<email>junkio@cox.net</email>
</author>
<published>2006-03-21T09:58:26Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=5ceb05f82edc49ad5e6b0ad98d633c124a567309'/>
<id>urn:sha1:5ceb05f82edc49ad5e6b0ad98d633c124a567309</id>
<content type='text'>
This matches c51d13692d4e451c755dd7da3521c5db395df192 commit to
record the primary branch of the remote with a symbolic ref
remotes/$origin/HEAD.  The user can later change it to point at
different branch to change the meaning of "$origin" shorthand.

Signed-off-by: Junio C Hamano &lt;junkio@cox.net&gt;
</content>
</entry>
<entry>
<title>revamp git-clone (take #2).</title>
<updated>2006-03-21T08:14:13Z</updated>
<author>
<name>Junio C Hamano</name>
<email>junkio@cox.net</email>
</author>
<published>2006-03-21T08:14:13Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=47874d6d9a7f49ade6388df049597f03365961ca'/>
<id>urn:sha1:47874d6d9a7f49ade6388df049597f03365961ca</id>
<content type='text'>
This builds on top of the previous one.

 * --use-separate-remote uses .git/refs/remotes/$origin/
   directory to keep track of the upstream branches.

 * The $origin above defaults to "origin" as usual, but the
   existing "-o $origin" option can be used to override it.

I am not yet convinced if we should make "$origin" the synonym to
"refs/remotes/$origin/$name" where $name is the primary branch
name of $origin upstream, nor if so how we should decide which
upstream branch is the primary one, but that is more or less
orthogonal to what the clone does here.

Signed-off-by: Junio C Hamano &lt;junkio@cox.net&gt;
</content>
</entry>
<entry>
<title>revamp git-clone.</title>
<updated>2006-03-20T08:21:10Z</updated>
<author>
<name>Junio C Hamano</name>
<email>junkio@cox.net</email>
</author>
<published>2006-03-20T08:21:10Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=dfeff66ed9a3931d60f3cd600ad8c14b5cc3d9e5'/>
<id>urn:sha1:dfeff66ed9a3931d60f3cd600ad8c14b5cc3d9e5</id>
<content type='text'>
This does two things.

 * A new flag --reference can be used to name a local repository
   that is to be used as an alternate.  This is in response to
   an inquiry by James Cloos in the message on the list
   &lt;m3r74ykue7.fsf@lugabout.cloos.reno.nv.us&gt;.

 * A new flag --use-separate-remote stops contaminating local
   branch namespace by upstream branch names.  The upstream
   branch heads are copied in .git/refs/remotes/ instead of
   .git/refs/heads/ and .git/remotes/origin file is set up to
   reflect this as well.  It requires to have fetch/pull update
   to understand .git/refs/remotes by Eric Wong to further
   update the repository cloned this way.

For the former change, git-fetch-pack is taught a new flag --all
to fetch from all the remote heads.  Nobody uses the git-clone-pack
with this change, so we could deprecate the command, but removal
of the command will be left to a separate round.

Signed-off-by: Junio C Hamano &lt;junkio@cox.net&gt;
</content>
</entry>
<entry>
<title>Merge fixes early for next maint series.</title>
<updated>2006-02-24T06:27:03Z</updated>
<author>
<name>Junio C Hamano</name>
<email>junkio@cox.net</email>
</author>
<published>2006-02-24T06:27:03Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=816c02ce8ecddce065e83db9f4ecb78f6b0e23dc'/>
<id>urn:sha1:816c02ce8ecddce065e83db9f4ecb78f6b0e23dc</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Merge branches 'jc/fix-co-candy', 'jc/fix-rename-leak' and 'ar/fix-win' into maint</title>
<updated>2006-02-24T06:25:32Z</updated>
<author>
<name>Junio C Hamano</name>
<email>junkio@cox.net</email>
</author>
<published>2006-02-24T06:25:32Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=7bd1527d2d8c80a6e9a0f8583082a5aee5428c68'/>
<id>urn:sha1:7bd1527d2d8c80a6e9a0f8583082a5aee5428c68</id>
<content type='text'>
* jc/fix-co-candy:
  checkout - eye candy.

* jc/fix-rename-leak:
  diffcore-rename: plug memory leak.

* ar/fix-win:
  fix t5600-clone-fail-cleanup.sh on windows
</content>
</entry>
</feed>
