【プログラムを始めるなら】Githubも次いでに覚えよう

githubGithub
Photo by Javier Garcia Chavez on Unsplash

GitHubのつなげ方を Sagasoon.

プログラムを、色々作るようになると、管理に悩むわけですよ。

折角つくったのに、「どこに保存したっけ?」。
毎回手を入れるんだけど、変更履歴もなければ、どこを直したのかも分からない。

ましてや複数人で作ってるプログラムなんてのは、みんなバラバラに管理してたら、そりゃもう大騒ぎですよ。
ということで、subversionやらgitやらがあるわけですよね。

折角なので、プログラムを始める時期に一緒にやっつけておきましょ。
今日は、github にソースを管理させるところまでご紹介します。

必要なもの

  • ソースを動かす場所(サーバでも、PCでも)
  • メールアドレス

サーバでもPCでも構いませんが、ソースを動かす場所が必要です。
また、git コマンド関連のものが動く環境を用意してください。
いわゆるレンタルサーバ的なところであれば、たいていはある気がします。
xserver とかでもOKです。

「自分のWindowsPCでやる」方は、

Git for Windows
We bring the awesome Git VCS to Windows

からプロダクトをダウンロードしてインストールすればOKです。

手順概要

だいたい細かくいうと、6段階ですかね。
やることは単純なので、さくっといきましょ。

  1. githubにアカウント作成
  2. 秘密/公開キー作成
  3. github 接続確認
  4. 環境作成
  5. プログラム作成
  6. githubへソースを登録

githubにアカウント作成

Githubへ行って、アカウントを作成しましょう。
メールアドレスがあれば、Freeのアカウントが作成できます。

GitHub: Where the world builds software
GitHub is where over 65 million developers shape the future of software, together. Contribute to the open source community, manage your Git repositories, review...

アカウントが作成できたら、画面右上の「+」マークから「New repository」をクリックしてください。

Owner / Repository name

と出てくるので、Repository name にお好きな「リポジトリ名」を指定してください。
リポジトリ名というのは、今から管理してもらうソースたちの名前です。
ほんとに好きな名前でOK。
後で分からないのはダメです。

その下に、

  • public
  • private

とありますが、これは、privateにしてあげてください。
publicは、ソースが誰にでもみえる状態。恥ずかしいので、privateにしました。

指定が終わったら、「Create repository」を押せばOKです。

秘密/公開キー作成

今度は、ソースを動かすサーバから、githubへ接続する際の認証情報を作成していきます。

ソースを動かすサーバに入ってください。

自分のPCで行う人は、さっきのgitをインストールしたときに、git bash がインストールされてます。それを動かしてください

公開キー/秘密キーのペアを作成します。
mkdir から cd、そして、ssh-keygen コマンドでキーのペアを作成します。
途中、パスフレーズを聞かれます。入力する際、しっかり覚えておいてください(パスワードです)。

[username@user ~]$ mkdir ~/.ssh
[username@user ~]$ cd ~/.ssh
[username@user .ssh]$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/site/home/username/.ssh/id_rsa):
/site/home/username/.ssh/id_rsa already exists.
Overwrite (y/n)? y
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /site/home/username/.ssh/id_rsa.
Your public key has been saved in /site/home/username/.ssh/id_rsa.pub.
The key fingerprint is:
c2:3f:38:06:87:9a:08:25:07:28:5c:2a:ed:f8:a0:49 <>
The key's randomart image is:
+--[ RSA 2048]----+
|なんちゃら       |
|かんちゃら       |
|なんちゃら       |
|かんちゃら       |
|なんちゃら       |
|かんちゃら       |
|なんちゃら       |
|かんちゃら       |
|                 |
+-----------------+

この後で、

[username@user .ssh]$ cat id_rsa.pub

として、id_rsa.pubの中身を画面に表示させます。
アルファベットの長い文字列が出てきたと思います。その情報をコピーしてください。

そしたら、githubにいって、右上のメニューから 下記の手順で公開キーをgithubに設定します。

  1. Settings を選択
  2. SSH and GPG keys を選択
  3. Titleに「git」とかにして、keyを、先ほどコピーした情報をペースト
  4. Add SSH key を押す

これで、サーバ側から github に接続が可能な状態に「なったはず」です。

github 接続確認

それでは、サーバ側からgithubへ接続できるか確認です。
githubで作成した ユーザー名 と、メールアドレスを使って、このコマンドを打ちます。

[username@users .ssh]$ git config --global user.name "ユーザ名"
[username@users .ssh]$ git config --global user.email "メールアドレス"

そしたら、このコマンドで、接続確認です。
パスフレーズを聞かれますが、秘密キー/公開キーをペアを作成した時に指定したものを入力すればOKです。

[username@users .ssh]$ ssh -T git@github.com
The authenticity of host 'github.com (52.69.186.44)' can't be established.
RSA key fingerprint is 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'github.com,52.69.186.44' (RSA) to the list of known hosts.
Enter passphrase for key '/site/home/username/.ssh/id_rsa':
Hi github_username! You've successfully authenticated, but GitHub does not provide shell access.

最後の文、
Hi github_username! You’ve successfully authenticated, but GitHub does not provide shell access.
ってのが出てきてればOKです。接続成功!

環境作成

それでは、github にソースを管理させるべく、ちょっとサンプルを作っていきます。
まずは、ソースを作る環境を作っていきます。

[username@users .ssh]$ mkdir /site/home/username/src/sample
[username@users .ssh]$ cd /site/home/username/src/sample
[username@users sample]$ git init
[username@users sample]$ git remote add origin git@github.com:ユーザー名/https://github.com/ユーザー名/リポジトリ名.git
[username@users sample]$ git clone  https://ユーザー名@github.com/ユーザー名/リポジトリ名.git

プログラム作成

そしたら、ソースを適当に作ります。

[username@users sample]$ echo "echo test" > sample.sh

これで、sample.sh っていうプログラムが出来ました。
中身をみてみてください。

[username@users sample]$ cat sample.sh

ってすると

echo test

と1行でてきましたか?
なんてことはない1行プログラムです。

githubへソースを登録

下記の3つのコマンドを実行すれば、サーバ側からgithubへソースが登録されます。

git add sample.sh
git commit -m 'sample src'
git push

これだけです。
尚、sample.sh の中身を編集したら、また、この3コマンド実行すればOKです。
また、sample.shも編集したとして、test.php というソースを追加で保存したいと思ったら、

git add sample.sh
git add test.php
git commit -m 'test.php add,sample src update'
git push

みたいにすればOK。
雰囲気分かってきましたかね?

add で指定したのは、更新や追加するソースを教えてます。
commitでサーバ側にソース登録してます。

commit自体は、最初はあまり深く気にしないほうがいいかもです。
複数人でソースを管理するとかでしたら、ちゃんと理解しないといけない話題です。

commitの後ろにあるのは、ソースを登録する時の「コメント」です。
そして、最後のpushで、githubへソースを登録してる感じです。

最後、github のサイトへ行ってみてください。
https://ユーザー名@github.com/ユーザー名/リポジトリ名
です。
先ほどpushした sample.sh が一覧にでてきませんか?

出てきたらOK! おめでとうございます。

まとめ

いかがですか?
掻い摘んで話ましたが、それなりに一通り登録まで説明してみました。

この後、cloneってなんだ? pull ってなんだ?とかいろいろ出てきますが、そこはまた次回のお話。

炭酸野郎

今日も何かを Sagasoonを運用してます。炭酸野郎です。
皆さんの「何か」が探せるべく、記事書いてます。
新卒で中堅SIerに就職→10年ちょいで退職→フリーランス→起業。副業としてのブログに目覚める(今ここ)。
時間作って、色々なことがやりたいお年頃です!

炭酸野郎をフォローする
Github IT
炭酸野郎をフォローする
SAGASOON

コメント

タイトルとURLをコピーしました