diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2011-02-02 12:48:32 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2011-02-02 17:11:41 +0000 |
commit | 05048e0f9168ceb7d66f6ac79dcae42f1e696826 (patch) | |
tree | 86d533135cd77ddda82856cab709c92e71c8e711 | |
parent | 3a3fc6b071f09970e7f79fb4f1a8f0013917371e (diff) | |
download | openembedded-core-05048e0f9168ceb7d66f6ac79dcae42f1e696826.tar.gz openembedded-core-05048e0f9168ceb7d66f6ac79dcae42f1e696826.tar.bz2 openembedded-core-05048e0f9168ceb7d66f6ac79dcae42f1e696826.zip |
bitbake/fetch2/git: Add nocheckout option to disable checkouts and always add scm data to checkouts
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | bitbake/lib/bb/fetch2/git.py | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/bitbake/lib/bb/fetch2/git.py b/bitbake/lib/bb/fetch2/git.py index 0a1818f825..6e078a1f7f 100644 --- a/bitbake/lib/bb/fetch2/git.py +++ b/bitbake/lib/bb/fetch2/git.py @@ -53,6 +53,10 @@ class Git(Fetch): else: ud.proto = "rsync" + ud.nocheckout = False + if 'nocheckout' in ud.parm: + ud.nocheckout = True + ud.branch = ud.parm.get("branch", "master") gitsrcname = '%s%s' % (ud.host, ud.path.replace('/', '.')) @@ -207,16 +211,15 @@ class Git(Fetch): if os.path.exists(destdir): bb.utils.prunedir(destdir) - if 'fullclone' in ud.parm: - runfetchcmd("git clone -s -n %s %s" % (ud.clonedir, destdir), d) - if os.path.exists("%s/.git/refs/remotes/origin" % ud.clonedir): - runfetchcmd("cp -af %s/.git/refs/remotes/origin/* %s/.git/refs/remotes/origin/" %(ud.clonedir, destdir), d) - if os.path.exists("%s/.git/packed-refs" % ud.clonedir): - runfetchcmd("cp -af %s/.git/packed-refs %s/.git/" %(ud.clonedir, destdir), d) - else: - os.chdir(ud.clonedir) + runfetchcmd("git clone -s -n %s %s" % (ud.clonedir, destdir), d) + if os.path.exists("%s/.git/refs/remotes/origin" % ud.clonedir): + runfetchcmd("cp -af %s/.git/refs/remotes/origin/* %s/.git/refs/remotes/origin/" %(ud.clonedir, destdir), d) + if os.path.exists("%s/.git/packed-refs" % ud.clonedir): + runfetchcmd("cp -af %s/.git/packed-refs %s/.git/" %(ud.clonedir, destdir), d) + if not ud.nocheckout: + os.chdir(destdir) runfetchcmd("%s read-tree %s%s" % (ud.basecmd, ud.tag, readpathspec), d) - runfetchcmd("%s checkout-index -q -f --prefix=%s -a" % (ud.basecmd, destdir), d) + runfetchcmd("%s checkout-index -q -f -a" % ud.basecmd, d) return True def supports_srcrev(self): |