GitHub

GitHub イシュー

不具合や要求など多くの人と議論するための機能

新しいイシュー作成

New Issue → タイトルと内容を入力 → Submit new issueをクリック

コメントを追記

issueの一覧からコメントしたいものをクリック → コメント記入 → Commentをクリック

イシューに対応 コミットする

編集するファイルの Edit this file をクリック → 編集 → Commit changesの下の欄に「#(イシュー番号)に対する対応を行いました」というようなコミットコメントを記入 → Commit changesをクリック

コミットする度にバージョンができる。Gitではバージョンをコミットのハッシュ(16進数)を使って管理している。

対応したイシューをCloseにする

コミットログからコミットのハッシュ値をコピーしておく → 対応したイシューを開きWiteタブの中身にハッシュ値 で対応されました。のような内容を記入(ハッシュ値と日本語の間には必ず空白を入れる) → Close and commentをクリック

Wiki

公開ドキュメントを作れる、webサイト管理システム

ページを新規作成

Wikiタグをクリック → Create the first page をクリック → テキストエリアにMarkdown(マークダウン)記法で内容を記入 → Save Pageをクリック

Wikiで現在表示しているページの編集はEditをクリック

Gist

メモやコードの断片を気軽に投稿して公開できる機能

https://gist.github.com/

上記サイトにアクセスしGist description...の欄にタイトル Filename...の欄に example.md などのファイル名その下に内容を記入 → Create secret gistをクリック

Create secret gist ... プライベートなgistでGoogle検索などに表示されない。URLを知っていれば誰でも見れる Create public gist ... 世界中に公開され、Google検索などにもヒットする。

公開鍵認証

公開鍵秘密鍵 2つの情報を使った認証方法

  • 公開鍵 ... 通信したい相手に渡す。情報を暗号化
  • 秘密鍵 ... 自分が秘密にしておく。情報を復号

SSH の公開鍵と秘密鍵の作成

ssh-keygen

作成するファイル名を入力する。デフォルトでよければそのままEnter

鍵を利用するためのパスワードを入力しEnterを2回繰り返す

公開鍵をGitHubに登録

公開鍵情報をコンソールに表示

cat  ~/.ssh/id_rsa.pub

自分のGitHubを開き、メニューからSettingsを選択 → SSH and GPG keysを選択 → New SSH keyをクリック → タイトルに公開鍵がどこで作成されたか区別できる名前を入力 → Keyにコンソールに表示した公開鍵情報をコピペする → Add SSH keyをクリック

GitHub からクローン

clone(クローン) ... GitHubリポジトリをコピーしてLinux内にもGitHubのようなリポジトリを作る工程

クローンするリポジトリを開く → Codeをクリック → SSHをクリック → git@github.com:自分のアカウント名/ファイル名をコピー

Linuxのコンソールでクローンするディレクトリに移動してから

git clone GitHubでコピーした内容を貼り付け

Are you sure you want to continue connecting (yes/no)? と聞かれたらyesと入力してEnter

Enter passphrase for key のように表示されたら秘密鍵を生成したときに入力したパスワードを入力しEnter

GitHub上でコミットがあった場合 (pull)

リポジトリとなっているディレクトリ内で

git pull origin gh-pages

で最新の変更を受け取れる。これをpullする という。

origin ... cloneの元となったリモートリポジトリの名前はデフォルトでoriginという名前になる。

現在登録されているリモートのリポジトリ一覧を見る

一覧を見たいディレクトリ内で

git remote

ローカルリポジトリGitHubに(push)

ローカルにリポジトリを作る

gitリポジトリを作成するディレクトリ内で

git init

ファイルをローカルリポジトリに追加する

ステージング ... 一旦変更情報を登録する

インデックス ... 変更情報を保持している領域

ステージングしてからコミットすることでリポジトリにデータが追加される

ステージング

git add ファイル名

ステージング状況

git status

コミット

git commit -m "コミットコメント"

コミットログ

git log

GitHubリポジトリを用意する

Repositories の New をクリック → Repository nameを入力しCreate repository

作成したGitHubリポジトリのCodeタグ → Quick setup → SSHを選択 → ...or push an existing repository from the command lineの項目をコピーする

リモートリポジトリのoriginを指定する

git remote add origin コピーしたものを貼り付け

デフォルトブランチを指定

git branch -M ブランチ名

ローカルの変更をリモートに適応することをpushという。

git push -u origin ブランチ名

-uオプション ... 次回以降originやブランチ名を省略した時に自動で指定の値にする

タグ

特定のコミットの状態に名前をつける。GitHubにおいて特定のバージョンのソフトウェアをリリースするために使われる。

git tag タグ名

タグをGitHubリポジトリにも反映させる

git push --tags origin ブランチ名

ブランチ

ブランチ ... ソースコードを分岐させて開発。開発のメインとなるバージョンの系列を木の幹、そこから派生するものを枝(branch)