さくらインターネットのレンタルサーバーへGitをソースコードからインストールする手順

Server サーバー
この記事は約9分で読めます。

※当ブログではアフィリエイト広告を利用しています。

WordPressテーマをバージョン管理システムの「Git」を利用して、ローカルPC(Windows)で管理しているのですが。

レンタルサーバーにもGitをインストールして、リポジトリをやり取りできないかなと思いまして。

そこで、さくらインターネットのレンタルサーバーへ、Gitをインストールしてみました。

ちなみに、さくらインターネットのレンタルサーバーは、「FreeBSD」というUNIX系のOSのようです。

なお、今回のバージョンは以下です。

  • FreeBSD 9.1-RELEASE-p24
  • Git 2.6.3

ソースコードからGitをインストール

ディレクトリの作成

まずは、さくらインターネットのレンタルサーバーへSSH接続します。

そして、ホームディレクトリにGit格納用の適当なディレクトリを作成します。

Welcome to FreeBSD!

#ホームディレクトリへ移動
$ cd ~

#ディレクトリ作成
$ mkdir local

#ディレクトリ作成
$ mkdir local/src

Gitソースコードのダウンロード

作成したディレクトリに移動し、wgetコマンドでソースコードをダウンロードします。

Git公式サイトより、最新版の「git-2.6.3.tar.gz」というファイルをダウンロードしました。

wgetコマンドは、「–no-check-certificate」オプションをつけないとエラーになりました。

ソースコードをダウンロードしたら、解凍します。

#ディレクトリ移動
$ cd local/src/

#Gitソースコードのダウンロード(失敗)
$ wget https://www.kernel.org/pub/software/scm/git/git-2.6.3.tar.gz
ERROR: cannot verify www.kernel.org's certificate, issued by '/C=IL/O=StartCom Ltd./OU=Secure Digital Certificate Signing/CN=StartCom Class 2 Primary Intermediate Server CA':
Unable to locally verify the issuer's authority.
To connect to www.kernel.org insecurely, use `--no-check-certificate'.

#Gitソースコードのダウンロード
$ wget --no-check-certificate https://www.kernel.org/pub/software/scm/git/git-2.6.3.tar.gz
100%[======================================>] 5,545,887   1.60MB/s   in 3.3s
2015-11-30 20:59:37 (1.60 MB/s) - 'git-2.6.3.tar.gz' saved [5545887/5545887]

#ダウンロードしたアーカイブの解凍
$ tar -zxf git-2.6.3.tar.gz

Gitのインストール

解凍したディレクトリへ移動し、Gitをインストールします。

インストールは、makeコマンドでは「Error expanding embedded variable.」というエラーになってしまうので、「gmake」コマンドを使用します。

#ディレクトリ移動
$ cd git-2.6.3

#makeコマンドでインストール(エラー)
$ make prefix=/home/[ユーザーID]/git all
…
Error expanding embedded variable.

#gmakeコマンドでインストール
$ gmake prefix=/home/[ユーザーID]/local all

$ gmake prefix=/home/[ユーザーID]/local install

#インストール完了後のディレクトリ一覧
$ ls -l /home/[ユーザーID]/local
total 20
drwxr-xr-x  2 [ユーザーID]  users  512 Nov 30 21:05 bin
drwxr-xr-x  3 [ユーザーID]  users  512 Nov 30 21:05 lib
drwxr-xr-x  3 [ユーザーID]  users  512 Nov 30 21:05 libexec
drwxr-xr-x  8 [ユーザーID]  users  512 Nov 30 21:05 share
drwxr-xr-x  3 [ユーザーID]  users  512 Nov 30 21:00 src

環境変数PATHへbinディレクトリを追加

環境変数PATHへ、インストールしたGitのbinディレクトリを追加し、Gitコマンドを使えるようにします。

環境変数は、printenvコマンド、echoコマンド(echo $環境変数名)で値を表示できます。

環境変数を追加するには、exportコマンドを使用するのですが、さくらインターネットのレンタルサーバーでは使えません。

なので、ホームディレクトリのCシェル設定ファイル(.cshrc)を編集し、シェル起動時に読み込まれるようにします。

編集後は、sourceコマンドでファイルを実行し、再度読み込ませます。

環境変数PATHの先頭に正しく追記できれば、「git –version」コマンドでインストールしたGitのバージョンが表示されるはずです。

#環境変数一覧の表示
$ printenv
SHELL=/bin/csh
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/home/[ユーザーID]/bin
SHELL=/bin/csh

#ホームディレクトリへ移動
$ cd ~

#viエディタで編集
$ vi .cshrc
# set path = (/sbin /bin /usr/sbin /usr/bin /usr/local/sbin /usr/local/bin $HOME/bin)
set path = ($HOME/local/bin /sbin /bin /usr/sbin /usr/bin /usr/local/sbin /usr/local/bin $HOME/bin)

#ファイルの実行
$ source .cshrc

#環境変数一覧の表示
$ printenv
PATH=/home/[ユーザーID]/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/home/[ユーザーID]/bin

#Gitバージョン確認
$ git --version
git version 2.6.3

サーバーでGitリポジトリの作成

サーバーで、適当なディレクトリを作成し、そこにGitリポジトリ(bareリポジトリ)を作成します。

#ホームディレクトリへ移動
$ cd ~

#ディレクトリ作成
$ mkdir rep

#ディレクトリ作成
$ mkdir rep/test

#ディレクトリ作成
$ mkdir rep/test/.git

#リポジトリ作成
$ git init --bare rep/test/.git
Initialized empty Git repository in /home/[ユーザーID]/rep/test/.git/

クライアントPCでGitリポジトリの作成

サーバーと同様に、クライアントPC(Windows)で、適当なディレクトリを作成し、そこにGitリポジトリを作成します。

WindowsのGit環境構築手順は、こちらの記事を参照してください。
WordPressテーマカスタマイズは「Git」で管理せよ-インストールと基本操作手順

リポジトリが作成できたら、適当な空ファイルを作成し、コミットします。

#リポジトリ作成
c:\>git init
Initialized empty Git repository in c:/test/.git/

#空ファイル作成
c:\>type nul > test.txt

#リポジトリへ追加
c:\>git add test.txt

#リポジトリへコミット
c:\>git commit -m "test commit"
[master (root-commit) a2458a4] test commit
1 file changed, 0 insertions(+), 0 deletions(-)
create mode 100644 test.txt

クライアントPCからサーバーへGitリポジトリをpush

ファイルを作成し、コミットしたリポジトリを、サーバーへpushします。

ssh経由で行うので、まずはリモートホストを追加します。

リモートホストは、「ssh://[ユーザーID]@[ホスト名]/[リポジトリディレクトリ]」のようになります。

#リモートホストの追加
c:\>git remote add origin ssh://[ユーザーID]@[ユーザーID].sakura.ne.jp/home/[ユーザーID]/rep/test/.git

#リモートホストへpush
c:\>git push origin master
[ユーザーID]@[ユーザーID].sakura.ne.jp's password: [パスワード入力]
Counting objects: 3, done.
Writing objects: 100% (3/3), 215 bytes | 0 bytes/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To ssh://[ユーザーID]@[ユーザーID].sakura.ne.jp/home/[ユーザーID]/rep/test/.git
* [new branch]      master -> master

サーバーでログを確認

クライアントPCからpushしたログを見てみましょう。

#ディレクトリ移動
$ cd rep/test/

#ログの表示
$ git log
ESC[33mcommit a2458a441f58d6e096345d0d38316dc6f21fbb85ESC[m
Author: myuser <xxxxxxxxxx@gmail.com>
Date:   Fri Dec 4 11:50:56 2015 +0900</xxxxxxxxxx@gmail.com>

test commit

最後に

さくらインターネットのレンタルサーバーへGitをソースコードからインストールし、クライアントPCとリポジトリをやり取りする手順は以上です。

クライアントPCでWordPressテーマのカスタマイズとテストを行い、Gitで管理しているのですが、そのリポジトリをサーバーへpushを行うと同時に自動で、サーバーのWordPressテーマディレクトリへファイルを展開するなんてことはできるのかな?

それができれば、いちいちFTPでファイルをアップロードするという手間が省けて楽なんですが。

ちょっとまた調べてみます。

以上です。

参考サイト

Linux(CentOS)へGitをインストール、共有リポジトリへpushする | 俺の開発研究所
Git – Gitのインストール
さくらインターネットのレンタルサーバに git のリモートリポジトリを作成する|mattintosh note (跡地)

コメント

  1. […] […]

タイトルとURLをコピーしました