14
20

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Gitを使おうよ! - Remote編 -(GitKrakenを入れてGUIでGitを操作するハンズオン)

Last updated at Posted at 2019-03-27

はじめに

Gitを使おうよ! - Local編 -(GitKrakenを入れてGUIでGitを操作するハンズオン)の後編的なものです。
GitHubなどにリポジトリをpushしたり、cloneしてきたりします。

GitHubを使ってみよう!

GitHubはGitリポジトリを共有するサービスのひとつです。

自分のソースコードを公開して、いろいろな人に見てもらったり、使ってもらったりもできるし、その逆に色んな人のコードを見たり、使ったりすることができます。

2018年にはMicrosoftに買収されることが決まって、そのおかげか有料だった非公開リポジトリが無料で利用できるようにもなりました!

実際にGitHubのアカウントを作成して、自分のリポジトリをGitHubにPushしてみましょう!

GitHubのアカウント作成

促されるままにGitHubのアカウントを取得しましょう!
残念ながらOAuthに対応してないのでユーザー名とか、メアドとかを入力する必要があります。

プランはまぁ、Freeでいいでしょう。
Proにすると大人数で非公開のリポジトリを使ったり、膨大なデータをGitHubへアップロードすることができたりします。
学生なら、申請したりするとPro相当のが無料で利用できるとかできないとか...

最後にちょっとしたアンケートがあります。
スキップもできるので、なんかいいかんじにしておきましょう。

最後に「登録されたメアドあてに確認メール送ったったわ。確認してくれや」みたいになるので確認してあげましょう。

これで今日からあなたもエンジニアだ!!!!

GitKrakenとGitHubを連携させる

GitKrakenはGitHubと連携させることができる。
GitKurakenのみでリポジトリをGitHub上に作成したり、GitHubにあるリポジトリを作成したりすることができる!便利!

GitKrakenの「Preferenecs」を開いて、「Authentication」をクリックしましょう。

「Connect to GitHub」のボタンをクリックするとブラウザが立ち上がって、GitKrakenのサイトが認証を開始してくれます。
GitHubへログインし、連携を許可してあげればおっけいです。

最終的にこんな感じになればできてます。

Screenshot from 2019-03-27 12-11-21.png

Remoteにリポジトリを作ってみる

Gitでは自分のPC側のことをLocal、GitHubなどのホスティングサービス側のことをRemoteと呼んでいます。
自分のLocalのリポジトリをRemoteにアップロードするためにまずはRemoteの準備を整えましょう。

GitKrakenのInitからGitHubのリポジトリを作成しましょう。

image.png

Nameにリポジトリの名前、Descriptionはそのリポジトリの説明です。
Accessはみんなに僕のソースコードを見てもらおうと思うのでPublicにしました。
誰にも見せるつもりがなかったり、今はいいや...ってときはPrivateにしておくのが良いでしょう。

2019/10/11 追記 ※ GitKrakenの料金が変更され、**Private Repositoryが無料版では開けなくなりました。** とりあえず今回はPublicで作りましょう。

このリポジトリには、前回作ったリポジトリをそのまま使おうと思ったので「Clone after init」のチェックは外しました。

最初からGitHubへ共有するつもりでリポジトリを作成するのなら、「Clone after init」のチェックを入れてローカルでの保存場所やlicenseを設定しておきましょう。

必要事項の入力が済んだら「Create Repository」!!

Remoteを追加してみる

「Remote」の欄にカーソルを当てて、「Add Remote」しましょう。

image.png

次に開くダイアログからGitHubリポジトリが参照できそうな雰囲気があるのですが、なんかいつも表示されないので、手動で設定してあげましょう。
ブラウザでGitHubを開いて、自分のアカウントのアイコンをクリックして「Your Repositories」のページを開きましょう。

で、先程作成したリモートのリポジトリがあるはずなのでそれを開いて、でかく表示されてるアドレスをコピーします。

image.png

コピーしてきたものをGitKrakenのPull URLのところへペーストします。
Pull URLにペーストすると、うすくPush URLのところにも同じ物が入ります。GitHubの場合はPullもPushも同じアドレスなのでこれで大丈夫です。

Push(アップロード)とPull(ダウンロード)でURLが分かれてる場合があるので、その時用です。

image.png

ここのNameは「なんのRemoteなのか」を表すものなのでなんでも大丈夫です。わかりやすい名前を付けましょう。

2020/9/27 追記 分かりやすいが吉だとは思っていますが、デフォルトとして使うRemoteの名前は`origin`が普通なので、特別な理由がなければ`origin`が無難そうです。 RemoteのNameが大きくかかわる部分はないですが、知識のひとつとして...

「Add Remote」して終了!
RemoteにGitHubが加わりました。

image.png

Pushしてみる

Pushとは、ローカルで増やしたリポジトリの変更をリモートへ反映する操作です。
先程追加したRemoteへプッシュしてみましょう。

上の方にある「Push」をクリックして、Submitです。

image.gif

これでローカルの状態がリモートに反映されました!

Pullしてみる

Pullはリモートの状態をローカルへ反映する操作のこと。

他の人が作ったブランチが役目を終え、developmasterへマージされていたりするとdevelopブランチが変更されますよね。
そういった場合にローカルへdevelopをプルしてきて、自分のブランチへマージしたりする必要が出てくるんです。

その辺のお話はあとでするとして、GitHubからファイルをひとつ追加してきました。
ファイルの追加/編集程度であればGitHubからも直接操作ができます。

image.png

変なアイコンになっている方がリモート、パソコンのアイコンのほうがローカルのリポジトリの最新のコミットです。
リモートのほうに新しいコミットがあるのでひとつ伸びてますね。

じゃあ、さっきプッシュしたみたいに、その隣のPullをクリックしてみましょう。

image.png

うん。ひとつにまとまりましたね。
同じブランチを複数のPCとかで操作するとプルするときにも衝突が発生することがあります。
その時は前回の記事のマージのときと同じように衝突を解決する必要があります。

Pull Requestしてみる

addJavaHelloWorldブランチの作業は完璧だ!!developにマージしてほしい!!」
それをリポジトリの管理者に直訴する手段がPull requestです!

マージさせてほしいブランチで何を作ったのかを説明して、あなたの書いたコードをレビューしてもらいます。
コードのレビューをしてもらうことで、プロジェクト内でコーディングのルールを厳守させたり、いい加減な実装をあぶり出して不具合の早期発見や防止ができます。

プルリクエストを作らないで勝手にマージしてしまうとせっかく定めたプロジェクト内のルールが破綻したり、他の人のコードとモロかぶりしてしまったりするので...

コードレビューは大変な作業だけど、大事な作業です...
プロジェクトのルールにもよるのですが、基本的に作るべきだと思います。

プルリクエストはローカルで作っても仕方ないので、ブラウザを開いてGitHub上で作成します。
GitHubのリポジトリのページで、ブランチを自分のものに切り替えて、「New pull request」をクリックします。

image.png

そして、このブランチで何を作ったのか説明をします。
この辺はプロジェクトごとに何を書くのか決めておくのがいいと思います。

image.png

いろいろ書いて「Create pull request」しましょう。

image.png

こんな感じになるので、イケてるエンジニアに自分のコードを見てもらいます。
ぼくはひとりなので、このまま下の方にある「Merge pull request」をします。

すると、マージするときのコミットメッセージを入力できるので、いじるなり、デフォの値をそのまま使うなりして、マージします。
んで、GitKrakenで確認してみましょう!

image.png

プルリクエストが受理されました!やった!
masterにチェックアウトして、プルして、また新たなブランチをmasterから作って、新しい機能の実装に励みましょう!!

cloneしてみる

GitHubに存在しているリポジトリをローカルにコピーするのがClone
このエントリでこねくり回してきたリポジトリをクローンしてみよう!!

GitHubからURLをコピります。
image.png

例としてこちらどうぞ。ぶっ壊してもまぁ大丈夫です。
https://github.com/okmtmk/git_test.git」

で、GitKrakenでファイルのアイコンのところをクリックして、「Clone」のところを開きます。
スクリーンショット 2019-03-27 15.38.55.png
URLのところにさっきコピーしたURLをペースト、パスは好きなように設定して「Clone the repo!」しましょう!

image.png

クローンできました!
いろいろなオープンソースのリポジトリをクローンしてコードを呼んだり、自分のプロジェクトに使ったりしてみましょう!!

GitHubのプロジェクトに限りませんが、他人のものを使うときはオープンソースライセンスへの配慮をお忘れなく。
中には自分のプロジェクトを公開する必要があるものもあります。
ライセンスの種類を調べたり、読んだりして必要な要件を満たすようにしましょう。

さいごに

これさえ知っておけばとりあえずなんとか使える...かな...

初心者だからこそGitとうまく付き合っていくのが効率よくプログラミングに対して理解を深める上で大切なのではないかなと思います。
いろいろ書いて、動かなくなって、原因がわからなくなる...とかよくある話なので...
そんなときにGitで管理していれば動かなくなる前の状態に戻したりすることができるし。

Gitは現場では必須といえるスキルのひとつだと思います。
複数人で作業するとなるとこれなしでは...と思うことが多いです。

僕もわからない機能とか、知らない機能がたくさんあるので大きな事は言えませんが...

効率的なツールを使って快適なプログラミング・ライフを楽しみましょう!!

14
20
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
14
20

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?