Githubの使い方

1. Githubを使ってみよう!

Githubとは、Gitコマンドを用いてソースコードを管理することのできるサービスです。

複数人で開発を行うときに、必ずと言っていいほど用いるので

エンジニアにとって不可欠な技術と言えるでしょう。

1.1. アカウントを作ってみよう!

はじめに、アカウントを作成します。以下のページに飛んで、アカウントを作ってみましょう。

Github Home

1.2. リポジトリを作ってみよう!

リポジトリとは、自分の作ったソースを管理するための箱です。 この中に全てのソースが含まれます。

2種類のリポジトリがあります。

リモートリポジトリ

ローカルリポジトリ

1.2.1. リモートリポジトリ

リモートリポジトリとは、Github上に保存されたリポジトリです。 つまり、リモートリポジトリこそが、管理すべき対象であり、オリジナルのものです。

1.2.2. ローカルリポジトリ

ローカルリポジトリとは、リモートリポジトリを自分のパソコン上にコピーしてきたものです!

ローカルリポジトリを用いて、自分のパソコン上で開発を行い、変更をリモートリポジトリに書き加えます。

1.2.3. 実際にリポジトリを作成してみよう!

まず、自分のホーム画面に移動して、Repositorysをクリックしましょう!

次の画面でNewをクリックしてください。

すると以下のような画面になるので、リポジトリの名前を打ち込んでCreate Repositoryしましょう。

f:id:dream-coders:20171113201710p:plain

initialize this repository with a READMEとありますが、チェックを入れておくことをオススメします。

README.mdは取り扱い説明書のようなものです。

リポジトリの内容が複雑になってくると、この中に使い方などを書きます。

さて、リポジトリを作り終わったら、以下の画面になるはずです。

f:id:dream-coders:20171113201724p:plain

今、READMEファイルだけで構成されたリポジトリが完成したはずです。

2. Gitコマンドを使いこなす

2.1. git clone

まず、先ほどGithub上に作ったリモートリポジトリをローカルリポジトリとして自分のパソコンにコピーしてみましょう。

先ほどの画面のClone or downloadをクリックして、表示されたURLをコピーしてください。

それを、ターミナルを開いて、以下のコマンドを打ち込んでください。

$ git clone <コピーしたURL>

例えば、以下のようになり、git cloneが完了した後にlsによってディレクトリの中身を確認すると、ちゃんとコピーされていることがわかります。

f:id:dream-coders:20171113201735p:plain

それではcdコマンドで、Testの中に入ってみてください。

2.2. git status

次に、README.mdファイルに変更を加えてみましょう。

ファイルをエディターで開き、#DreamCodersTestの次の行にThis is a testと書き込んでみてください。

これも立派な変更です。

さらに、新しいファイルを作ってみましょう。

dreamcoders.txt(.txtはテキストファイル)を作って、保存してみてください。

その後、git statusをすると、以下のようにちゃんと変更を確認することができます。

f:id:dream-coders:20171113202529p:plain

modified のあとに書いてあるのは変更されたファイル、 ただファイル名だけ表示されているのが新しく作成されたファイルです。

2.3. git add

git addはgit commit, git pushとセットです。

順序としては、addしてからcommitし、最後にpushします。

順に説明すると、

addによって、指定されたファイルを「ステージ」に上げることができます。

commitによって、addによって指定された、「ステージ」にあるファイルのみをローカルリポジトリに書き込みます。(つまり、ファイルを変更した時点ではローカルリポジトリに変更は加えられていないことになります)

最後に、リモートリポジトリに反映するために、pushをします。

では、まずgit addからやってみましょう。

以下のコマンドを打ち込んでください。

$ git add *

*は、「全ての」という意味です。つまり、git statusによって表示されていた全てのファイルがaddされます。

そして、

$ git status

で、現在の状況を確認してみましょう。以下のような表示になるはずです。

f:id:dream-coders:20171113202957p:plain

変更されたREADME.mdと、新たに作られたtext.txtがステージに上げられていることがわかります。

2.4. git commit

次に、commitをしてみましょう。

commitによって変更がローカルリポジトリに正式に反映されます。

また、-mコマンドによって、コメントを打ち込むことができます!

以下のコマンドを打ち込んでください。

$ git commit -m "This is a first commit"

git statusと打っても何もファイル名は表示されません。

これはcommitまで終えてローカルリポジトリに変更を保存したので、ローカルリポジトリが最新の状態になっているからです。

2.5. git push

最後に、ローカルリポジトリをリモートリポジトリに保存してみましょう。

以下のコマンドを打ち込みます。

$ git push

これが成功すると、何かデータを送っている感じの文字が表示されれば完了です。

リモートリポジトリが変更されたということは、Githubのサイトから変更が確認できるということなので、先ほど作った自分のアカウントからTestのリポジトリ内をみてみましょう!

以下のようになっていれば完璧です!

f:id:dream-coders:20171113203247p:plain

ちゃんとREADME.mdが変更され、text.txtが追加されていることがわかります。

2.6. git pull

ローカルリポジトリを作る時、2.1.では、git cloneを使いました。

しかし、cloneが使えるのは、何もない状態の時(最初のだけ)です。

すでにローカルリポジトリが存在する場合は、その中に入って(この例では、DreamCodersTestのフォルダ内で)、以下のコマンドを打ち込みます。

$ git pull

これにより、最新のリモートリポジトリがローカルリポジトリにコピーされます。

これで、Gitの基本の基本は完了です!