diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2011-02-03 20:16:05 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2011-02-03 20:18:52 +0000 |
commit | dfc5faf717ac1f917af398097d5295128548a55d (patch) | |
tree | 5d89fe8c1f0c05236b1c3f709c7d0a91a71f7f86 /bitbake/lib/bb | |
parent | 3a70078c369def85aca1086ac8ca83d082bb27ec (diff) | |
download | openembedded-core-dfc5faf717ac1f917af398097d5295128548a55d.tar.gz openembedded-core-dfc5faf717ac1f917af398097d5295128548a55d.tar.bz2 openembedded-core-dfc5faf717ac1f917af398097d5295128548a55d.tar.xz openembedded-core-dfc5faf717ac1f917af398097d5295128548a55d.zip |
bitbake/fetch2/git: Ensure deleted branches upstream are removed, all branch tags are forced to the upstream revisions and all revisions and tags are always fetched
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib/bb')
-rw-r--r-- | bitbake/lib/bb/fetch2/git.py | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/bitbake/lib/bb/fetch2/git.py b/bitbake/lib/bb/fetch2/git.py index d396d2458..9f79d4776 100644 --- a/bitbake/lib/bb/fetch2/git.py +++ b/bitbake/lib/bb/fetch2/git.py @@ -121,15 +121,18 @@ class Git(Fetch): os.chdir(ud.clonedir) # Update the checkout if needed + needupdate = False for name in ud.names: if not self._contains_ref(ud.revisions[name], d): - # Remove all but the .git directory - bb.fetch2.check_network_access(d, "git fetch %s%s" %(ud.host, ud.path)) - runfetchcmd("%s fetch %s://%s%s%s %s" % (ud.basecmd, ud.proto, username, ud.host, ud.path, ud.branches[name]), d) - runfetchcmd("%s fetch --tags %s://%s%s%s" % (ud.basecmd, ud.proto, username, ud.host, ud.path), d) - runfetchcmd("%s prune-packed" % ud.basecmd, d) - runfetchcmd("%s pack-redundant --all | xargs -r rm" % ud.basecmd, d) - ud.repochanged = True + needupdate = True + if needupdate: + bb.fetch2.check_network_access(d, "git fetch %s%s" % (ud.host, ud.path)) + runfetchcmd("%s remote rm origin" % ud.basecmd, d) + runfetchcmd("%s remote add origin %s://%s%s%s" % (ud.basecmd, ud.proto, username, ud.host, ud.path), d) + runfetchcmd("%s fetch --all -t" % ud.basecmd, d) + runfetchcmd("%s prune-packed" % ud.basecmd, d) + runfetchcmd("%s pack-redundant --all | xargs -r rm" % ud.basecmd, d) + ud.repochanged = True def build_mirror_data(self, url, ud, d): # Generate a mirror tarball if needed |