BFT名古屋 TECH BLOG

日々の業務で得た知識を所属するエンジニアたちがアウトプットしていきます。

【GitLab】【Sourcetree】開発超★初心者が GitLab + Sourcetree で最小限のバージョン管理を始めてみる 第1回(全2回)

はじめに

こんにちは!
BFT名古屋支店・インフラ女子(?)のやまぐちです。

今私たちは名古屋市の小規模飲食店応援企画と称して「混雑状況可視化サービス」を社外の方も含めて一緒に作ろうという企画を立ち上げています。

prtimes.jp

2021年6月~8月にかけて設計・構築・試験、2021年9月~2022年8月をサービス提供期間として活動していますので、もしご興味のある方いらっしゃいましたら上記のプレスリリースからお申し込みください!お待ちしています~!

脱線しましたが、そんな事情があり社内外の人が簡単に・セキュアにアクセスできるバージョン管理システムを導入することにしました。
とはいえ、開発未経験者の私からすると「どう使うの?」的なことも多く、とりあえず最低限のことができるための環境として作っています。いいものはどんどん使って改善していきたいので、経験者の方からのご意見・ご指摘をぜひともお願いしたいです。

やりたいこと

f:id:bftnagoya:20210524105538p:plain:w500

全体像はこんな感じで、

  • Redmine進捗管理WBS
  • GitLabでバージョン管理(成果物・資料共有)
  • Slackで日々のコミュニケーション(アプリからの通知も含む)

をしていこうと思っています。

f:id:bftnagoya:20210524110844p:plain:w500
本記事は全2回の第1回目として

  • Sourcetreeのインストール・設定
  • GitLabからのクローン

を紹介し、2回目で

  • Sourcetreeを使って成果物・資料を操作
  • Slack連携部分の紹介

を行う予定です。

前提条件

この記事で記載していることを実施するためには管理者側として以下の準備が必要です(Sourcetreeを使うだけのユーザは不要です)。

  • GitLab
    • アカウント取得
    • リポジトリ作成(ファイル等の配置)
    • SSH鍵の作成&公開鍵の登録

この3つ目のSSH鍵の作成&公開鍵の登録が大事です。SSH鍵の作成はGitLabではできないので何かツールを使うかLinux環境とかで作ってください。ちなみに今回作成したGitLabの非公開リポジトリへはHTTPSつまりブラウザ経由でのアクセスを(管理者以外で)許可しません。

アカウントにはメールアドレスが必要なくらいで特に迷うことはありません。また今回CI/CDは考慮に入れていません(のちのち実装するかもしれません)のでリポジトリの構成も通常のファイルサーバでの管理しているのと同じようにしています。テストを行うため、テストファイルなどを入れておくとよいです。

Sourcetreeとは

SourcetreeはGitクライアントソフトで、画面上の直感的な操作をすると裏ではGitコマンドが実行される仕組みになっています。

Sourcetreeを使おうと決める前はどうやって複数の人とこのリモートレポジトリを共有しようかと悩みました。このGitLabのリモートレポジトリに私と同じようにみんなもアクセスできればいいとも思いましたが、そのためにはアカウントを人数分作成する必要があります。そんなの面倒ですし、みんないらないですよね(多分) 。

というわけでいくつかあるGitクライアントの中で「日本語対応」で「無料」で「わかりやすい」というSourcetreeを使うことにしました。他のGitクライアントのツールは使ったことがないのでとりあえず使ってみたというレベルです。

Sourcetreeのインストール

インストールをする前にGitLabにアクセスするためのURLと秘密鍵を管理者から共有してもらいましょう。秘密鍵が漏洩すると誰でもGitLabにアクセスできてしまうので保管は厳重にお願いします。

  • 以下のリンクにアクセスし、SourcetreeのWindows版をダウンロードします。
    www.sourcetreeapp.com f:id:bftnagoya:20210524113536p:plain:w650

  • ソフトウェアライセンス使用許諾契約・プライバシーポリシーに同意し、ダウンロードします。 f:id:bftnagoya:20210524113801p:plain:w350

  • ダウンロードしたファイルをクリックし、そのまま画面を進めます。
    f:id:bftnagoya:20210524113851p:plain:w500 f:id:bftnagoya:20210524113910p:plain:w500 f:id:bftnagoya:20210524113926p:plain:w500

  • ユーザ名とメールアドレスを入力します。ここで入力するユーザ名とメールアドレスがコミット時に記録されます。
    f:id:bftnagoya:20210603112013p:plain:w500

  • 最後にSSH鍵を読み込んでインストール完了です。
    f:id:bftnagoya:20210524113941p:plain:w300

ここで読み込むSSH鍵はGitLabに登録した公開鍵のペアとなる秘密鍵です。読み込みが完了するとSourcetreeが起動します。
f:id:bftnagoya:20210524130852p:plain:w300

GitLabのリモートレポジトリのクローンを作成する

f:id:bftnagoya:20210524131026p:plain:w500
今回Sourcetreeを使う理由の一つに、分散型で作業を進めたいというものがあります。分散型にすることで、ある程度個人で作業を進めた上でマスターとなるリモートレポジトリに反映させることができます。

GItLabにはマスターの成果物・資料があります。この資料などをSourcetreeを介してディレクトリ構成ごとすべて複製すること、これをクローンと言います。ではさっそくクローンを作成していきましょう。

  • [ Clone ]を押し、リモートレポジトリのURLを入力します。[ サーバのキーを受け入れますか? ]のダイアログボックスで[ はい ]を押すと認証が完了します。
    f:id:bftnagoya:20210524132005p:plain:w500 f:id:bftnagoya:20210524132021p:plain:w500 f:id:bftnagoya:20210524132147p:plain:w350

  • 上から二番目の欄にはローカルリポジトリのパスを入力し、[ クローン ]を押してください。ローカルリポジトリに入れたパスの下に例だとkonzatsu_visというフォルダができ、そこを起点としてリモートレポジトリが複製されます。
    f:id:bftnagoya:20210524134346p:plain:w500

クローンできていることを確認しましょう。

  • [ History ]メニューで過去の変更履歴を確認できます。いろいろテストしているのがわかりますね!笑 f:id:bftnagoya:20210524132748p:plain:w500

  • 右上の[ Explorer ]を押すとローカルリポジトリに指定したフォルダが開きます。リモートリポジトリの内容が確認できればOKです。
    f:id:bftnagoya:20210524134708p:plain:w500 f:id:bftnagoya:20210524134822p:plain:w350

終わりに

これでSourcetreeを用いてGitLabで成果物や資料を共同管理する準備ができました。次回は実際に成果物をアップロードしたり、更新されたものをローカルリポジトリに反映したりします。ついでにSlackに変更通知が来るようにした場合にどのように見えるのかについてご紹介をしたいと思います。

ここまで読んでいただき、ありがとうございました~^ ^

続きはこちら ↓↓↓
【GitLab】【Sourcetree】開発超★初心者が GitLab + Sourcetree で最小限のバージョン管理を始めてみる 第2回(全2回) - BFT名古屋 TECH BLOG