バージョン管理システムは、とあるプロジェクトでVSS(Visual SourceSafe)の時代から使い始め、CSV、Subversionと使ってきましたが、基本的には一人での開発ばかりなので、サーバとの差分の確認程度にしか活用できていませんでした。
Gitを使い始めても特に変わる事はありませんでしたが、全体的な開発・運用体制の改善・見直しを考え、まずはリモートリポジトリによる運用を始めようと思います。
計画
■やりたいこと
・複数端末でのデータ共有(主にプログラムファイル)
・デプロイ周りの改善(ステージング/本番環境の整備とデプロイツールの導入に繋げる)
・端末がMacの時はコマンドでも良いけど、WindowsはGUIの方が良いので「SourceTree(Win/Mac版あり)」をメインに使用する
■条件
・リモートリポジトリは自社管理サーバ内に設置する
・sshも整備する(SSHの認証方式を「パスワード認証」から「公開鍵認証」に変更してみた)
[備考]
・GitHub(https://github.com/pricing)は価格面で合わないので使わない(先日の障害も考慮)
・「SourceTree」を使うのはCUIに慣れていないユーザーにGitの運用をしてもらう事も想定しているため(教育業務用)
準備
- SourceTreeをダウンロード(https://ja.atlassian.com/software/sourcetree/overview/)してインストール(※ユーザー登録すれば無料で使える)
- リモートリポジトリを設置するディレクトリを作成(今回は適当に/home/username/repos)
- リモートリポジトリ名はドメイン名やシステム名を命名する(今回はmemento-mori.jp.git)
- 新しいリモートリポジトリを作成
# cd /home/username/repos # mkdir memento-mori.jp.git # cd memento-mori.jp.git # git init --bare --shared=true
※「memento-mori.jp.git」ディレクトリ内にGitの関連ファイルが作成されているのを確認
運用
■SourceTreeの設定
SourceTreeにリモートリポジトリを登録します。画面左上の「新規 / クローンを作成する」を押して、先ほど作成したリモートリポジトリを設定します。
URLのフォーマットはこちら「プロトコル://ユーザー名@ホスト名:ポート番号/gitのパス/gitファイル名.git」。ポート番号は22であれば省略できますが、今回は以下のような設定としますので、URLはこのようになります。
プロトコル | ssh |
---|---|
ユーザー名 | fukuyama |
ホスト名 | git.memento-mori.jp |
ポート番号 | 22 |
gitのパス | /home/username/repos/ |
gitファイル名 | memento-mori.jp.git |
ssh://username@git.memento-mori.jp:22/home/username/repos/memento-mori.jp.git
URLが合っていれば以下のようなメッセージが表示されますので、後は保存先のパスや、ブックマークの名前(後で変更可能)を設定して「クローン」を押せば設定は完了。
今回は新規のリモートリポジトリなので何も作成されませんが、既存プロジェクトのリモートリポジトリだと、保存先のパスにクローンされたファイルが生成されます。
Photo credit: stuntguy3000 via Visualhunt.com / CC BY