GitPrep 2.0 is released - Support pull request and add good features

GitPrep 2.0 is released at 2016-5-7. GitPrep is portable clone of GitHub. GitPrep work on CGI and own server. GitPrep 2.0 is major version up. It supports Pull request.


Added features is that:

  • Support mail address. you can identify user by mail address.
  • Adding to user id, you can set user name.
  • you can set encoding, and diff option(which ignore space) at each project. If you write the setting in config file, you set these settings at project setting page.
  • Header for reverse proxy is change to X-Forwarded-Proto from X-Forwarded-HTTPS
  • Needed temporary file is created in gitprep directory. not more depend "/tmp"

GitPrep image and example

The following is GitPrep example URL. This is run as CGI at sakura rental server. If you access the following URL, You can use GitPrep. It support SSL.

GitPrep example

Incompatible change

GitPrep now need Perl 5.10.1+(Before version need Perl 5.8.7). Latest GitPrep use latest Mojolicious, so the security risk having old Mojolicious is solved.

Don't support cygwin now. You can use GitPrep on cygwin, but I don't check if GitPrep work well on cygwin.

Upgrading from GitPrep 1.0

If you use Perl 5.8, you need to install newer perl by using perlbrew.

    curl -L | bash
    echo "source ~/perl5/perlbrew/etc/bashrc" >> ~/.bash_profile
    source ~/.bash_profile

perlbrew install perl-5.16.3
perlbrew switch perl-5.16.3
perl -v

remove extlib directory to do clean installation.

    cd gitprep
    rm -rf extlib

GitPrep installation

At first, setup modules.

    prove t

Next, if you upgrade GitPrep from 1.0, you need to upgrade the database.

    # Backup gitprep directory for safety
    cd ..
    cp -rp gitprep gitprep.bak

# Upgrade database
cd gitprep
mv data/gitprep.db data/gitprep_v1bak.db
old/copy_database_v1_to_v2 data/gitprep_v1bak.db data/gitprep.db

If you use GitPrep 2.0 first, run the following command.


For GitPrep, git command is needed. If you install git on you local directory, you set git path in gitprep.conf

    ;;; Git command path

finish GitPrep instalation. GitPrep is easy to install.

Start and stop GitPrep

Start GitPrep.


Access GitPrep.


Stop GitPrep.

    ./gitprep --stop

Please talk about GitPrep

GitPrep is open source project. If you use GitPrep, please inform your friends, community, team of company about GitPrep. If the people who want to use GitHub feature on own server and install it easily, inform the people about GitPrep.

I'm Japanese. I'm personal. I don't have patrons. I don't have the big company support. I don't have the power of advertisement. But I believe good Perl project contributes to Perl itself.

For open source author, it is pleasure that created project is used by many people. I am planning to add issue and wiki system to GitPrep. Please add start GitHub if you like GitPrep.


Leave a comment

About Yuki Kimoto

user-pic I'm Perl Programmer. I LOVE Perl. I want to contribute Perl community and Perl users.