Nevar pievienot vairāk kā 25 tēmas Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.
Dominik Meyer f83ffc7f5d
ADD: present tag clouds and lates repositories with changes on index
pirms 1 gada
_layouts ADD: present tag clouds and lates repositories with changes on index pirms 1 gada
css ADD: added social media buttons pirms 1 gada
js ADD: updated layout pirms 1 gada
webfonts ADD: updated layout pirms 1 gada
.description ADD: added project description pirms 1 gada
.gitignore ADD: initial commit pirms 1 gada
.perl-version ADD: initial commit pirms 1 gada
README.md FIX: some ; between commands pirms 1 gada
_config.yml FIX: renamed layout file pirms 1 gada
cpanfile ADD: cpanm dependency file pirms 1 gada
impressum.html ADD: added legal notice pirms 1 gada
robots.txt ADD: added missing robots.txt pirms 1 gada

README.md

GITcloud

GITcloud is a distribution of perl modules and scripts to generate a git repository overview like GitHub or GitLab completly out of static HTML files.

Description

The distribution uses the static website generator HiD by genehack. An additional HiD Plugin HiD::Generator::GitRepositories is responsible for generating the HTML pages from the git repositories.

This distribution is a good addon to Gitolite, if you want to make your gitolite managed public repositories available to the world.

Features

  • parses a directory of git repositories, generates a repository listing and individual repository pages for all branches and trees, like GitHub or GitLab
  • offline syntax highlighting using Text::ColorVim, supporting a huge amount of different file formats
  • repository metadata is parsed from the metadata branch within the repository, including description and tags.
  • only repositories with new commits get regenerated

Advantages

  • generates static HTML files, making your GITcloud fast with a minimum of server resources
  • no cookies are required, making is easy to be DSGVO conform
  • reduced attack vectors against your server

Disadvantages

  • minimum user interaction possible (no likes, stars, or comments)
  • website generation can take a while with many and large repositories
  • at the moment no issue tracking (see planned)

Installation

This is just a quick installation guide. More documentation will become available in the future.

  1. change to the user you want to run gitcloud under. Keep in mind that this user requires access to your public git repositories (read) and write access to the webspace the HTML files should be served from.
  2. install the plenv environment git clone git://github.com/tokuhirom/plenv.git ~/.plenv
  3. To compile perl another plugin to plenv is necessary git clone git://github.com/tokuhirom/Perl-Build.git ~/.plenv/plugins/perl-build/
  4. initialize plenv export PATH="$HOME/.plenv/bin:$PATH; eval "$(plenv init -)"
  5. compile perl 5.26.2 plenv install -j 9 -D usethreads -D man1dir=none -D man3dir=none 5.26.2; plenv rehash
  6. install cpanm plenv install-cpanm; plenv rehash
  7. clone GITcloud and switch into the directory git clone https://gitcloud.federationhq.de/git/GITcloud.git; cd GITcloud
  8. install GITcloud dependecies cpanm --installdeps . Be aware this step can take a long time, because a lot of perl modules are downloaded. But you only have to do this one time. If it bails out with an error try to run the command again.
  9. edit the _config.yaml file to your requirements
  10. run every time you want to regenerate the HTML files export PATH="$HOME/.plenv/bin:$PATH; eval "$(plenv init -)"; hid publish