さくらのレンタルサーバーにgitのリモートリポジトリを作成する

さくらのレンタルサーバーに専用リモートリポジトリを作成


さくらのレンタルサーバーへ、gitのリモートリポジトリを作成する手順をメモします。

github等のサービスを使用しないでバージョン管理用の専用リポジトリを作成する事が出来ます。

環境:さくらのレンタルサーバ スタンダードプラン、 git version 2.23.0(インストール済み)

ベアリポジトリの作成

ローカルPCからSSHクライアントを利用して、サーバーへログインします。
(Macのターミナルを使用)

$ ssh アカウント名@XXXXXX.sakura.ne.jp

1. ログイン直後、home配下、アカウント名がカレントとなります。

2.リポジトリ用のディレクトリを作成する
(ディレクトリの拡張子を.gitとする必要がある)

3.作成したディレクトリへ移動

4.更新情報のみを持つ「ベアリポジトリ」として初期化する。

 

リポジトリをクローンする

作成したベアリポジトリをクローンし、同サーバー内とローカルPC上にリポジトリを作成していきます。

作成するリポジトリの更新情報がクローン元のベアリポジトリで保存・管理され、
クローン同士、更新情報共有出来るようになります。

サーバー内にリポジトリをクローン

ベアリポジトリを作成した同サーバー内に、リポジトリを作成します。

ローカルPCに後ほど作成するリポジトリから見てリモートリポジトリとなり、
サーバー公開ディレクトリのソース等もバージョン管理出来るようになります。

1./home/(アカウント名)/www配下に空のディレクトリを作成する

2.ベアリポジトリから先ほど作成したディレクトリ内にクローンする
(空のディレクトリでないとクローン出来ません)

done.でクローン完了。
クローン元のディレクトリから.git拡張子を除いた名前のディレクトリ(versions)が作成されており、
この配下がgitバージョン管理の対象となります。
(gitが存在している)

git remote -v コマンドで作成したクローンがGithubリポジトリへ紐づいている事が確認できる。

ローカル環境にクローンする

環境:Mac 10.13.6、 Sourcetree 2.7

ローカル環境にローカルリポジトリとしてクローンを作成します。

gitクライアントソフトのSourcetreeを使用します。

Sourcetreeメニューからファイル > 新規 > URLからクローンを選択

ソースURLの箇所へ通信方式をsshにして、アカウント名、さくらのレンタルサーバーのドメイン、作成したベアリポジトリのパスを指定します。

ssh://(アカウント名)@(アカウント名).sakura.ne.jp/home/(アカウント名)/repository/versions.git

クローンをクリックするとローカルで指定した箇所にリポジトリが作成されます。

バージョン管理の検証

クローン作成したリポジトリ(ローカル&リモート)同士でバージョン共有を行えるか確認します。

ローカルリポジトリから変更を加える

妥当なファイルを追加してコミット
(Sourcetree)

コミットが完了したら、サーバーのリモートリポジトリを更新してみます。(pullする)

リモートリポジトリから変更をプルする

サーバーへログインして、リモートリポジトリへ移動

コマンド git pull で最新のバージョンに更新

ローカルでの変更がリモートへも反映されています。
次にリモートからも変更を加えてみます。

リモートリポジトリから変更を加える

リモートリポジトリ内で妥当なファイルを作成

git add 変更をステージング

git commit 変更をコミット

git push 変更をプッシュ
done. を表示、masterブランチ(本流)へプッシュが成功しているのがわかる。

ローカルリポジトリから変更をプルする

リモートからコミット、プッシュした変更内容をローカルリポジトリへ反映。

Sourcetreeメニューから、フェッチ > リモートから全て取得する

リモートでコミットした内容がわかる(メッセージも反映されている)

プル実行で、ローカルリポジトリを更新する。

参考
GitとSourceTreeではじめるバージョン管理と自動デプロイ
gitのベアリポジトリとノンベアリポジトリ

Follow me!