mirror of
https://gerrit.googlesource.com/git-repo
synced 2024-12-23 07:16:21 +00:00
Merge "Fix shallow clone behavior"
This commit is contained in:
commit
2635c0e3b6
17
project.py
17
project.py
@ -1877,6 +1877,13 @@ class Project(object):
|
|||||||
|
|
||||||
if depth:
|
if depth:
|
||||||
cmd.append('--depth=%s' % depth)
|
cmd.append('--depth=%s' % depth)
|
||||||
|
else:
|
||||||
|
# If this repo has shallow objects, then we don't know which refs have
|
||||||
|
# shallow objects or not. Tell git to unshallow all fetched refs. Don't
|
||||||
|
# do this with projects that don't have shallow objects, since it is less
|
||||||
|
# efficient.
|
||||||
|
if os.path.exists(os.path.join(self.gitdir, 'shallow')):
|
||||||
|
cmd.append('--depth=2147483647')
|
||||||
|
|
||||||
if quiet:
|
if quiet:
|
||||||
cmd.append('--quiet')
|
cmd.append('--quiet')
|
||||||
@ -1914,16 +1921,6 @@ class Project(object):
|
|||||||
spec.append(str((u'+%s:' % branch) + remote.ToLocal(branch)))
|
spec.append(str((u'+%s:' % branch) + remote.ToLocal(branch)))
|
||||||
cmd.extend(spec)
|
cmd.extend(spec)
|
||||||
|
|
||||||
shallowfetch = self.config.GetString('repo.shallowfetch')
|
|
||||||
if shallowfetch and shallowfetch != ' '.join(spec):
|
|
||||||
GitCommand(self, ['fetch', '--depth=2147483647', name]
|
|
||||||
+ shallowfetch.split(),
|
|
||||||
bare=True, ssh_proxy=ssh_proxy).Wait()
|
|
||||||
if depth:
|
|
||||||
self.config.SetString('repo.shallowfetch', ' '.join(spec))
|
|
||||||
else:
|
|
||||||
self.config.SetString('repo.shallowfetch', None)
|
|
||||||
|
|
||||||
ok = False
|
ok = False
|
||||||
for _i in range(2):
|
for _i in range(2):
|
||||||
gitcmd = GitCommand(self, cmd, bare=True, ssh_proxy=ssh_proxy)
|
gitcmd = GitCommand(self, cmd, bare=True, ssh_proxy=ssh_proxy)
|
||||||
|
Loading…
Reference in New Issue
Block a user