Na navigaci | Klávesové zkratky

Translate to English… Ins Deutsche übersetzen…

Git: snadný cherry-pick z GitHubu

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

  1. 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

    před 5 lety | odpovědět | reagoval [2] David Grudl
  2. David Grudl http://davidgrudl.com #2

    avatar

    #1 Fčeldo, díky za tip, upravil jsem kód podle toho

    před 2 lety | odpovědět

Zanechat komentář

Text komentáře
Kontakt

(kvůli gravataru)



*kurzíva* **tučné** "odkaz":http://example.com /--php phpkod(); \--