xaizek / rocketgit (License: AGPLv3+) (since 2018-12-09)
Light and fast Git hosting solution suitable to serve both as a hub or as a personal code storage with its tickets, pull requests, API and much more.
<root> / tests / git_log1_help.php (15be757926d3c7aec1a47b77fd2eed77e5a15100) (1,159B) (mode 100644) [raw]
<?php
// This will be run from git_log1.sh

error_reporting(E_ALL | E_STRICT);
ini_set("track_errors", "On");

$INC = dirname(__FILE__) . "/../inc";
require_once(dirname(__FILE__) . "/config.php");
require_once($INC . "/init.inc.php");
require_once($INC . "/git.inc.php");

rg_log_set_file(dirname(__FILE__) . "/git_log1.log");

$rg_no_db = TRUE;
require_once("common.php");

$rg_git_debug = 100;
$patch_limit = rg_git_patch_limit($db);

rg_log('');
rg_log_enter('Testing rg_git_log...');
$path = dirname(__FILE__) . "/git_log1/.git";
$max = 0;
$from = "";
$to = "";
$also_patch = TRUE;
$r = rg_git_log($path, $max, $from, $to, $also_patch, $patch_limit);
if ($r === FALSE) {
	rg_log("Cannot generate log (" . rg_git_error() . ")!");
	exit(1);
}

$final = '';
foreach ($r as $commit_index => $commit_info) {
	$a = rg_git_diff('uniq-id', $commit_info['files'],
		dirname(__FILE__) . "/git_log1.tmpl");
	if ($a === FALSE) {
		rg_log("Error calling rg_git_diff for commit_index $commit_index"
			. " (" . rg_git_error() . ")!");
		exit(1);
	}

	$final .= $a;
}
file_put_contents(dirname(__FILE__) . "/git_log1.final", $final);
rg_log_exit();


rg_log('OK!');
?>
Hints

Before first commit, do not forget to setup your git environment:
git config --global user.name "your_name_here"
git config --global user.email "your@email_here"

Clone this repository using HTTP(S):
git clone https://code.reversed.top/user/xaizek/rocketgit

Clone this repository using ssh (do not forget to upload a key first):
git clone ssh://rocketgit@code.reversed.top/user/xaizek/rocketgit

You are allowed to anonymously push to this repository.
This means that your pushed commits will automatically be transformed into a pull request:
... clone the repository ...
... make some changes and some commits ...
git push origin master