From patchwork Thu Jun 14 03:09:41 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [bitbake-devel, 4/4] fetch2/git.py: Optimize clone fall back when it is local Date: Thu, 14 Jun 2012 03:09:41 -0000 From: Jason Wessel X-Patchwork-Id: 29803 Message-Id: <1339643381-23026-5-git-send-email-jason.wessel@windriver.com> To: A file:// url should use "clone -s" to greatly speed up the clone in the case of a kernel when it is local. Signed-off-by: Jason Wessel --- lib/bb/fetch2/git.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/lib/bb/fetch2/git.py b/lib/bb/fetch2/git.py index 1ad9213..f5a3983 100644 --- a/lib/bb/fetch2/git.py +++ b/lib/bb/fetch2/git.py @@ -192,7 +192,13 @@ class Git(FetchMethod): # If the repo still doesn't exist, fallback to cloning it if not os.path.exists(ud.clonedir): - clone_cmd = "%s clone --bare --mirror %s %s" % (ud.basecmd, repourl, ud.clonedir) + if repourl.startswith("file://"): + use_s = "-s" + repo = repourl[7:] + else: + use_s = "" + repo = repourl + clone_cmd = "%s clone %s --bare --mirror %s %s" % (ud.basecmd, use_s, repo, ud.clonedir) if ud.proto.lower() != 'file': bb.fetch2.check_network_access(d, clone_cmd) runfetchcmd(clone_cmd, d)