雑記 / 2014-01-31



[編集]

Git をインストール(SmartHTTP) - 2014-01-30

タグ :Raspberry PI :Linux
  • Web公開ディレクトリにリポジトリを作成
    • /var/www/git/ 以下にリポジトリ rep1 を作成。Apache2 で扱えるように所有者も変更。
      sudo mkdir -p /var/www/git/rep1
      sudo git --bare init
      sudo chown -r www-data.www-data /var/www/git
      
  • Apache2 のGit用設定ファイル追加
    • /etc/apache2/conf.d/git.conf を作成。SmartHTTP というのは git-http-backend を呼ぶものらしい。
      とりあえずHTTPでBASIC認証する設定で。
      SetEnv GIT_PROJECT_ROOT /var/www/git/
      SetEnv GIT_HTTP_EXPORT_ALL
       
      AliasMatch ^/git/(.*/objects/[0-9a-f]{2}/[0-9a-f]{38})$          /var/www/git/$1
      AliasMatch ^/git/(.*/objects/pack/pack-[0-9a-f]{40}.(pack|idx))$ /var/www/git/$1
      ScriptAlias /git/ /usr/lib/git-core/git-http-backend/
       
      <location /git>
        AuthType Basic
        AuthName "Git Repository"
        AuthUserFile /etc/apache2/passwd.git
        Require valid-user
      </location>
      
  • パスワード設定
    • パスワードファイル新規作成時は -c 付き。
      sudo htpasswd -c /etc/apache2/passwd.git user1
      
  • Apache2再起動
    sudo /etc/init.d/apache2 restart
    
  • ブラウザで直接アクセスしても白い画面にしかならない。
    • TortoiseGit などのGitクライアントからclone(リポジトリ内容をローカルにコピーすること。SVNでいうcheckout)できれば成功。