如何在 Debian 的 Linux 容器上设置 Git 服务器

如何在 Debian 的 Linux 容器上设置 Git 服务器

我有一个LXC集装箱在我的 Debian 系统上。我想在上面设置一个公共 Git 服务器,以便其他人可以访问它。我怎样才能做到这一点?

更新#1

链接到apache2.confhttp://pastebin.com/Nvh4SsSH

答案1

看看这个 Howto。它有点过时,但应该包含设置 Git 服务器所需的一般步骤。该指南的标题为:如何在 Debian 服务器上安装公共 Git 存储库

一般步骤

  1. 安装 git + gitweb

    $ sudo apt-get install git-core gitweb
    
  2. 设置 gitweb 目录

    $ sudo mkdir /var/www/git
    $ [ -d "/var/cache/git" ] || sudo mkdir /var/cache/git
    
  3. 设置 gitweb 的 Apache 配置

    $ sudo vim /etc/apache2/conf.d/git
    

    文件内容:

    <Directory /var/www/git>
       Allow from all
       AllowOverride all
       Order allow,deny
       Options ExecCGI
       <Files gitweb.cgi>
       SetHandler cgi-script
        </Files>
     </Directory>
    DirectoryIndex gitweb.cgi
    SetEnv  GITWEB_CONFIG  /etc/gitweb.conf
    
  4. 将 gitweb 文件复制到 Apache

    $ sudo mv /usr/share/gitweb/* /var/www/git
    $ sudo mv /usr/lib/cgi-bin/gitweb.cgi /var/www/git
    
  5. 设置gitweb.conf

    $ sudo vim /etc/gitweb.conf
    

    内容gitweb.conf

    $projectroot = '/var/cache/git/';
    $git_temp = "/tmp";
    #$home_link = $my_uri || "/";
    $home_text = "indextext.html";
    $projects_list = $projectroot;
    $stylesheet = "/git/gitweb.css";
    $logo = "/git/git-logo.png";
    $favicon = "/git/git-favicon.png";
    
  6. 重新加载/重新启动 Apache

    $ sudo /etc/init.d/apache2 reload
    
  7. 设置 Git 存储库

    $ mkdir -p /var/cache/git/project.git && cd project.git
    $ git init
    
  8. 配置存储库

    $ echo "Short project's description" > .git/description
    $ git config --global user.name "Your Name"
    $ git config --global user.email "[email protected]"
    $ git commit -a
    $ cd /var/cache/git/project.git && touch .git/git-daemon-export-ok
    
  9. 启动 Git 守护进程

    $ git daemon --base-path=/var/cache/git --detach --syslog --export-all
    
  10. 测试克隆存储库(从辅助计算机)

    $ git clone git://server/project.git project
    

添加额外的存储库+用户

要添加更多存储库,只需重复步骤 #7 - #9。要添加用户,只需为每个附加用户创建 Unix 帐户即可。

相关内容