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> / samples / rg.conf (a56d1b2bc1dc07d0c8baa2f2b4ef6c46df925fc8) (1,398B) (mode 100644) [raw]
# This is the apache configuration file for RocketGit

<VirtualHost *:80>
	ServerName rg.domain.tld
	ServerAlias rg
	DocumentRoot /usr/share/rocketgit/root/
	ErrorLog logs/rocketgit-error_log
	CustomLog logs/rocketgit-access_log common
	<Directory "/usr/share/rocketgit/root">
		AllowOverride All
		Order allow,deny
		Allow from all
	</Directory>

	RewriteEngine On
	#RewriteLog /var/log/httpd/rg-Rewrite.log
	#RewriteLogLevel 3

	# Allow .ico and 'themes' folder
	RewriteCond %{REQUEST_URI} ^/(favicon\.ico|themes)
	RewriteRule .* - [L]

	# index.php is special
	RewriteCond %{REQUEST_URI} ^/index\.php
	RewriteRule .* /index.php?rwe=1 [L,QSA]

	# all rest
	RewriteRule (.*) /index.php?rwe=1&vv=$1 [L,QSA]


	# Compress
	AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/javascript application/x-javascript
	DeflateBufferSize 81920

	# Cache at will
	<FilesMatch "(?i)^.*\.(ico|flv|jpg|jpeg|png|gif|js|css|swf)$">
		FileETag MTime Size
	</FilesMatch>

	<IfModule mod_expires.c>
		ExpiresActive On
		ExpiresByType image/vnd.microsoft.icon "access plus 7 days"
		ExpiresByType image/png "access plus 1 day"
		ExpiresByType text/css "access plus 1 day"
		ExpiresByType text/javascript "access plus 1 day"
		ExpiresByType application/javascript "access plus 1 day"
		ExpiresByType application/x-javascript "access plus 1 day"
	</IfModule>
</VirtualHost>
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