Pokud vám někdo na GitHubu pošle commit, je vhodné ho před začleněním
do hlavní větve ověřit nebo třeba upravit. Jak si snadno commit z GitHubu
vyzobnout do svého repozitáře? Používám k tomu skript
remotepick.php
, který spustím v repozitáři a jako parametr
uvedu URL commitu. Což je adresa, na kterou vede například odkaz
363413a
na této
stránce. Takže spustím:
php remotepick.php https://github.com/hrach/nette/commit/363413a042adff…
A skript vypadá takto:
<?php
$url = @$_SERVER['argv'][1];
if (!preg_match('#github.com/[^/]+/[^/]+/commit/\w+#', $url)) {
exit("Invalid URL");
}
$tmp = sys_get_temp_dir() . '/tmp.patch';
copy("$url.patch", $tmp);
passthru('git am ' . escapeshellarg($tmp));
unlink($tmp);
Poté se commit objeví v aktuální větvi .
Komentáře
Fčelda #1
Ještě jedna možnost existuje, a nemusí se stahovat celý repozitář (má smysl pouze pokud tam je hodně změn):
curl https://github.com/…63413a.patch | git am
David Grudl #2
#1 Fčeldo, díky za tip, upravil jsem kód podle toho
Tento článek byl uzavřen. Už není možné k němu přidávat komentáře.