以前、Unityの開発環境を整える時SVNの利用方法についてご紹介しました。
ただ、どのツールも使い勝手が悪く、SVNはもはや主流ではないのだなぁと実感しました。そこで、今回は構成管理をGitに変更すべく、Gitの環境構築とフロントエンドツールを使用した初期設定についてご紹介します。なお、私自身、Gitは仕事て少し使用した程度で使い方もすっかり忘れていますし、どう使うのが一般的なのかも覚えていないので、勉強しながら進めている段階ですので、嘘情報がありましたらご容赦ください。
環境
今回はMacにローカルリポジトリ(ノンベアリポジトリ)を作成して、家にあるNASにベアリポジトリ(大元のリポジトリ)を作成していきます。それぞれのスペックは以下になります。
- Mac OS
MacBookAir9,1
システムのバージョン: macOS 10.15.3 (19D2064) - NAS
Link Station LS-WSXL54
Gitのインストール
まずはターミナルを起動して、Gitがインストールされているか確認してみます。ターミナルは以下から起動することができます。
GitはMacに最初からインストールされていました。
hirokuma@hirokumac ~ % git --version
git version 2.24.3 (Apple Git-128)
一応最新版をインストールしていきます。私はHomebrewを使ってインストールしました。Homebrewはパッケージ管理ツールでインストールを簡単に実行することができます。
Homebrewのinstall
Homebrewでインストールを試みましたが、以下の通りエラーとなってしまいました。
hirokuma@hirokumac ~ % brew install git
zsh: command not found: brew
hirokuma@hirokumac ~ %
Homebrew自体がインストールされていなかったので、インストールしていきます。インストールは公式サイトにある以下のコマンドを使用します。
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
インストールの途中でEnterキーの入力やパスワードの入力が求められます。無事インストールが終わるとbrewコマンドが使えるようになります。
Gitのインストール
Gitのインストールは簡単で、以下のコマンドをターミナルに打ち込むだけです。
hirokuma@hirokumac ~ % brew install git
無事インストールが完了したら、バージョンコマンドでGitのバージョンを確認しておきましょう。
リポジトリの作成
ネットワークに接続してあるNASにGitのレポジトリを作成します。NASへのパスですが、Finderからフォルダをターミナルのドロップすることで確認できます。私のNASは/Volumesでした。
リポジトリは以下のコマンドで作成できます。以下はVolumes/GitRepoにリポジトリを作成する例です。
hirokuma@hirokumac GitRepo % git init --bare
Initialized empty Git repository in /Volumes/GitRepo/
hirokuma@hirokumac GitRepo %
フロントエンドツール Forkのインストール
コマンドライン苦手なエンジニアらしからぬ私はGUIのツールが必須です。昔仕事では Source Treeというツールを使用していましたが、ネットを漁るとForkというツールが便利そうなので、そちらを使用することにします。なお、このアプリは有償アプリでお試しで使う分には無料ですが、長く使うためには購入が必要($49.99)となります。
ダウンロードとインストール
まずこちらからforkをダウンロードします。
インストーラを実行してインストールすると、以下の通り起動します。
ノンベアレポジトリの作成
Macで管理するレポジトリを作成します。上で作成したベアリポジトリ をクローンでローカルにコピーします。今は何もないので、空のリポジトリが設定されます。サイドバーのRepositoriesを右クリックしてCloneを選択します。
すると、Repositoryのパスを入力する画面になるので、先ほどのNASのパスを設定します。 Parent DirectoryにはMac側のパスを入力します。
これでノンベアレポジトリの作成は完了です。
ノンベアレポジトリへファイルの追加
Mac側のレポジトリが作成されたので、先ほど指定した Parent Directoryにソースコードを追加していきます。今回は自分の書いたアプリのコード一式を追加してみました。コードはMacのディレクトリに格納してください。
格納するとLocal Changesのカッコの中の数字が増えます。これは変更が発生したファイル数になります。そしてファイルはUnstaged Changedの一覧に表示されます。これらをコミット対象にするために、全ファイルを選択してStageボタンをクリックします。しばらく処理が行われたのち、全てのファイルが下のリストに移動します。
移動されたファイルをコミットします。コミットは右下のコメント欄に入力し、Commitをクリックすれば完了です。
NASのベアリポジトリにPushする
GitでPushはローカルで育てた修正を大元のリポジトリに登録することを意味します。先ほど追加したコードツリー一式をNASのリポジトリに登録します。Branchesのmasterを右クリックしてPush master to originを選択します。
Push all tab1を選択してファイルをプッシュすれば完了です。
まとめ
Gitをあまり使ったことがないのですが、導入の容易さに驚きました。SVNがあまり使われない理由がわかったように思います。今でもあまり変化を望まないような開発の現場ではSVNに固執する人も多く、Gitが導入されていない現場もあるかと思います。コードの登録処理時間やブランチを切り替える速度など、SVNとは段違いのイメージがあるので、是非試してみてはいかがでしょうか?(とういう、うちの職場もSVNだったりします。。。)
コメント
[…] 【Mac】Gitを使った構成管理環境の構築 以前、Unityの開発環境を整える時SV… […]