2016-02-24 13 views
5

Sto usando git per il controllo della versione per questo progetto mysql/php e ho gli host virtuali impostati in Apache dove l'origine/master è il sito Web predefinito (porta 80) e un host virtuale diverso, con porte diverse (8081, 8082, 8083, ecc.) per ogni cartella di lavoro della copia di dev (in modo che possiamo visualizzare il lavoro dell'altro al volo) ... utilizzando git (hooks?),scrivi git commit informazioni sulla versione nel footer dell'app

come faccio a configurarlo in modo che per ogni volta che qualcuno commette lo & lo spinge a scrivere informazioni leggibili sulla versione umana (timestamp, committer, commenti, repository, branch, ecc.) in un file HTML? Spero di lanciare queste informazioni nel piè di pagina di ogni pagina, quindi è ancora più facile tenere traccia di chi lavora/copia che stiamo visualizzando in un dato momento.

+0

Usa post-ricezione uscita rispondi in qualsiasi modo ti piaccia spingere. – jthill

risposta

3

Potrebbe aggiungere questo al piè di pagina fino a quando si ha accesso alla funzione exec():

exec('git branch | sed -n "/\* /s///p"', $output); 
exec('git --no-pager show --summary', $output2); 

$current_commit = [ 
    'branch' => $output[0], 
    'commit' => array_shift($output2), 
    'author' => array_shift($output2), 
    'date' => array_shift($output2), 
    'message' => implode('', $output2), 
]; 

echo '<pre>' . print_r($current_commit,true) . '</pre>'; 

vi darà un qualcosa di output come questo:

Array 
(
    [branch] => master 
    [commit] => commit 12345f424909eda4db1f7a811eb9d3a7e7112345 
    [author] => Author: Test Tester <[email protected]> 
    [date] => Date: Thu Feb 11 14:13:51 2016 -0500 
    [message] =>  small update 
) 
Problemi correlati