ヴァージョン管理を行う上で、リモートリポジトリは重要です。
リモートリポジトリは、お使いのパソコンとは別のコンピュータ上でソースコードを管理する場所で、チーム開発を可能にする他、お使いのパソコンが故障した場合などにソースコードが消失してしまうのを防げます。
この章ではリモートリポジトリの作成の仕方と利用方法を学びます。
※この記事は執筆・公開から3年以上経過しています。記事の情報が古くなっている場合がありますのでご注意ください。
リモートリポジトリの利用~ 365日の紙PHP(13日目)
さて、今日はリモートリポジトリをつくります。ご自宅に別のパソコンがあればそこにリポジトリを作っても良いですが、インターネットに公開していないのであれば外出先からそのリポジトリにアクセスできず少し不便です。
今日は初心者にも簡単に扱えるWEBサービス「Bitbucket」を利用してリモートリポジトリを作ってみましょう。
Bitbucketにアカウントを作る
Bitbucket はフリーのホスティングサービスです。Git の他、Mercurial という別の分散バージョン管理システムのリポジトリを作成できます。
5ユーザーまでの利用は無料となっています。同じようなサービスで有名なものに「Github」というものがありますが、こちらは無料プランでは非公開リポジトリを作ることができません。いくらでも見られて構わないのであれば Github を利用するのも良いですが、ひっそりと勉強したいのであれば無料で非公開リポジトリの作れる Bitbucket が良いようです。
では、リポジトリを作成していきましょう。Small teams 無料 の Try this plan をクリックして下さい。アカウント用の E-mail アドレスが求められます。
E-mail アドレスを入力すると、アカウントの詳細を入力する欄が表示されます。お名前と強固なパスワードを入力して下さい。強固すぎて忘れてしまわないように、メモをとって他人に見られないところに保管しておきましょう。
名前とパスワードを入力して Continue をクリックすると、確認用の E-mail が送信されます。
E-mail を確認しましょう。Verify my email address で確認です。なお、下図のとおりスマフォのアドレスでも大丈夫のようです。
E-mail アドレスの確認が終わりました。あとは Bitbucket で利用するアカウント名を入力して続行して下さい。
このように、Dashboard ダッシュボードが開けばアカウントの作成は終了です。もしスマフォで登録された方は、画面右上の人のアイコンからログアウトを選ぶことで、パソコンから再ログインできます。
では、リポジトリを作成してみましょう。ダッシュボードの「リポジトリの作成」をクリックして下さい。新規リポジトリの作成画面が開きます。
Repository name リポジトリ名は「firstLogin」にしましょうか。非公開リポジトリを作るには、アクセスレベル「これは非公開リポジトリです」にチェックが入っているか確認してください。入力したらリポジトリの作成をクリックしてください。
空のリポジトリがセットアップされました。
ソースコードをプッシュする
さて、リポジトリができたらローカルにあるソースコードをリモートリポジトリにプッシュしてみましょう。
「Command line」 の 「I have existing project」をクリックすると情報がプルダウンされます。赤線 https:// で始まるURLをコピーしてください。
次は NetBeans のプロジェクトを右クリックし、「Git」>「リモート」>「プッシュ」を選びます。
「Git リポジトリの場所を指定」でリポジトリURL に先ほどのURLを指定し、ユーザーとパスワードを入力してください。
次へをクリックすると、ローカルの分岐選択になります。master -> master[A] を選択して次に進んでください。
次は、ローカル参照を更新します。ここはそのまま終了をクリックしましょう。
ローカルのソースコードがリモートリポジトリにプッシュされます。プッシュが終わると、確認画面が出ます。「はい」をクリックしてウィンドウを閉じましょう。
リモートリポジトリの確認
さて、ではリモートリポジトリの状況を確認してみましょう。ブラウザで Bitbucket を開きます。画面上の「リポジトリ」から「最近更新したリポジトリ」を開いてみましょう。
赤枠に、プッシュされたローカルリポジトリでのコミットが表示されています。
コミット内容を確認してみましょう。どのコミットでどのような変更が加えられたかの差分が一目でわかるようになっています。
まとめ
このようにリモートリポジトリにソースコードの修正状況をプッシュしておくことで、過去のある時点を指定してソースコードを取り出すことができるようになります。
明日は今日プッシュしたソースコードを今度はローカルにクローン(複製)してみます。クローンを使うと別のパソコンでもソースコードの修正ができるようになりますね。
その場合、元のパソコンと新しいパソコンで同じソースコードを修正してしまう場合があります。この時 Git は出来るだけ自動でソースコードの整合性を保つように補完してくれますが、全く同じ場所に別の修正がされた場合はコンフリクト(衝突)が起こります。こうしたコンフリクトが起きた場合にはどうすれば良いかについても簡単に解説していこうと思います。
お疲れ様でした。