#!/usr/bin/php5 loadHTML($repositories_html); $dom->preserveWhiteSpace = false; $repositories_ol = $dom -> getElementsByTagName('ol'); $repositories_a = $repositories_ol -> item(0) -> getElementsByTagName('a'); foreach ($repositories_a as $repository_a) { $href = $repository_a->getAttribute('href'); $href_split = preg_split('/.*\//', $href); $repositories[$href_split[1]] = 'http://git-testing.drupal.org'.$href; } foreach ($repositories as $directory => $repository) { if (! file_exists($directory)) { print ('Cloning '.$repository.' into '.$directory."\n"); try { $git -> createClone($repository, false, $directory); } catch(exception $e) { } } elseif (is_dir($directory.'/.git')) { $fetch_repositories[$directory] = $repository; } } if (!empty($fetch_repositories)) { foreach ($fetch_repositories as $directory => $repository) { print ('Fetching '.$repository.' into '.$directory."\n"); $orig_dir = getcwd; if (chdir($directory)) { $command = $git -> getCommand('fetch') -> setOption('q') -> setOption('all'); try { $command -> execute(); } catch(exception $e) { } } chdir($orig_dir); } }