Archive | 4月, 2012

リモートリポジトリを置く このエントリーをはてなブックマークに追加

8 4月

なんだかんだでローカルで開発しても、どこかサーバにリモートリポジトリを置いておきたい。

なので、設定しました。

リモートにリポジトリ置き場を作る。

$ sudo mkdir /var/repos/
$ sudo chown USER:USER /var/repos

これが全部のリポジトリを置くところ。

gitのプロジェクト置き場を作る。慣例的になんちゃら.gitというディレクトリにするらしい。

$ mkdir /var/repos/Project.git

gitinitする。bareというオプションは、リモートリポジトリですよという意味。

git init --bare

ローカルに戻り、git管理のプロジェクトディレクトリに行く。pushする先をリモートサーバにするよう、設定をする。

$ git remote add origin ssh://USERNAME@SERVER.NAME:PORT/var/repos/Project.git

これで、gitの設定ファイルに書き込まれる。gitコマンドを使ったほうが簡単だけど、.git/configを直接変更してもよい。

vim .git/config
[remote "origin"]
  url = ssh://USERNAMR@SERVER.NAME:PORT/var/repos/Project.git
  fetch = +refs/heads/*:refs/remote/origin/*

pushする。初めてのpushは、リモートリポジトリになにもないため、明確に自分のこのリポジトリを!むこうのサーバに!pushします!くらいの主張性をもってpushする。

$ git push origin master

二回目からは、git pushだけでpushできる。

初期ドメインを独自ドメインにリダイレクトする このエントリーをはてなブックマークに追加

8 4月

さくらVPSを借りると、初期ドメインが割り当てられる。特に設定をしなければ、独自ドメインを設定した後も初期ドメインでアクセスできる。

しかし、初期ドメインは気に入っているドメインではない!なので、初期ドメインでアクセスがきたら独自ドメインにリダイレクトする。

パッと見は一瞬でアドレスが書き換わって、初期ドメインにアクセスしたつもりが独自に行ってました、というかんじ。

まず、Apacheのバーチャルホストの設定でAllowOverrideがAll(有効)になっているか確認する。なっていなければ追加してサーバ再起動。

<VirtualHost *:80>
  ServerName blog.peacois.me
  DocumentRoot /path/to/documentroot/
    <Directory />
    AllowOverride All
  </Directory>
</VirtualHost>

ドキュメントルートに下記のような.htaccessを置く。

RewriteEngine on
RewriteCond %{HTTP_HOST} example\.com [NC]
RewriteRule .* http://peacois.me%{REQUEST_URI} [R=301,L]

RewriteEngineをonにして、もしRewiteCondでHTTP_HOSTが大文字小文字を問わず(NC)初期ドメインだったら、RewriteRuleでURLを永続的な移動として(R=301)書き換える。

AllowOverrideがAllになっていないまま.htaccessを追加して、あれー全然効かないな?とハマりました。