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.php (22cf8aae9b38b6919651566513af8fa78b6e194d) (711B) (mode 100644) [raw]
<?php
error_reporting(E_ALL | E_STRICT);
ini_set("track_errors", "On");

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

rg_log_set_file("git.log");

$rg_scripts = "/usr/share/rocketgit";

echo "[*] Checking if git-init works...\n";
$r = rg_git_init("git.tmp");
if ($r !== TRUE) {
	echo "Cannot run rg_git_init (" . rg_git_error() . ")!\n";
	exit(1);
}

echo "[*] Populate repo...\n";
file_put_contents("git.tmp/a", "aaa");
system("cd git.tmp; git commit -a -m \"aa\"; git checkout -n b1");
// This is a bare repo! Could not work!

echo "[*] Testing rg_git_refs...\n";
$refs = rg_git_refs("git.tmp");
print_r($refs);

system("rm -rf git.tmp");

echo "git: OK\n";
?>
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