Upgrade to Pro — share decks privately, control downloads, hide ads and more …

いい加減なGitHubチュートリアル

kirue129
January 30, 2017

 いい加減なGitHubチュートリアル

しがない理工系学生による超大雑把なGitの使い方

kirue129

January 30, 2017
Tweet

Other Decks in Education

Transcript

  1. 目次 1. 「GitHub」でのアカウント登録 2. 「Git」のインストール 3. 「Git」の初期設定 4. ソースコードの管理方法 a.

    リポジトリの作成 b. ソースコードの編集 c. ブランチの切り替え d. 複数人での管理
  2. 名前、メール等の設定 -「GitHub」の初期設定- ユーザー情報の入力 「GitHub」上のユーザー名、メールアドレスを入力 色の指定 $ git config --global user.name

    "[ユーザー名]" $ git config --global user.email [メールアドレス] $ git config --global color.ui true 現在の設定の確認(任意) $ git config --list 日本語への対応(※) $ git config --global core.quotepath off ※ファイル名が日本語にならない場合は、再インストール  すると治るかもしれません(たぶん)
  3. 「GitHub」とクライアントのssh接続 -「GitHub」の初期設定- ssh公開鍵の生成 鍵用のフォルダを作り、その中で公開鍵を作成 $ mkdir .ssh $ cd .ssh

    $ ssh-keygen Enter passphraseと表示され、 パスフレーズの入力(※)を2回求められるので 同じパスフレーズを入力する。 すると左のような画面になり鍵が生成される (鍵の型は毎回異なるので同じ物になりません) ※パスフレーズは入力せず Enterだけでも構いません
  4. 「GitHub」とクライアントのssh接続 -「GitHub」の初期設定- 「GitHub」の公開鍵の登録画面を開く ログインして以下の順に進み、鍵の登録画面を開く →「Setting」 (アイコンクリック時にメニューとして表示される) →「SHH and GPS keys」

    →「New SSH key」 公開鍵の登録 以下の二つを入力して「Add key」をクリック 「Title」 今使っているマシンの名前を書く(Win10MainPCとか) 「Key」 先ほどコピーした鍵の中身を貼り付け クライアント名 先ほどコピーした公開鍵の中身
  5. 「GitHub」とクライアントのssh接続 -「GitHub」の初期設定- 接続の確認 「Git Bush」上で接続の確認を行う $ ssh -T [email protected] 以下の文面が返ってきたら接続完了

    Hi (account名)! You've successfully authenticated, but GitHub does not provide shell access. ※ssh初回接続だと「Are you sure you want to continue connecting (yes/no)?」と聞かれるが、「yes」と入力すればおk
  6. ローカルリポジトリにファイルを登録 -ソースコードの編集- ファイルの登録 「Git Bush」上でファイルの登録を行う $ git add -A この時、「warning:

    LF will be replaced by CRLF in …」 と出た場合、以下のコマンド(※)を実行し、再登録をする $ git config --global core.autoCRLF false $ git add -A ※Git が改行コードを CRLF へ変更しようとするのでそれをやめさせ る
  7. ローカルリポジトリの更新(コミット) -ソースコードの編集- ローカルリポジトリの更新(コミット) コミットコマンドを実行してリポジトリの更新を行う コメント(※)は適当に「commit test」とでもしておく $ git commit -m

    "[コメント]" ローカルリポジトリの更新の確認 先ほどコミットした内容が反映されているかチェック $ git log ※このコメントがかなり重要で、本来「 ◦◦する処理の追加」などと書く必要がある  これがあるおかげで、 GitHubでソースの変更箇所とその理由が一目でわかる  あと今回は英語だが、日本語ので書いてもよい
  8. リモートリポジトリにプッシュ -ソースコードの編集- リモートリポジトリにアップロード プッシュ(※)を実行してリモートリポジトリの更新を行う 「ブランチ名」(後で解説します)は今回「master」です $ git push origin [ブランチ名]

    ※本来プッシュする場合は、他人の更新と混在しないように、一度リモートのデータを持ってくるのですが、  今回は一人で作業者していると仮定して、そこを省略しています。  複数人での編集については「複数人での管理」を参照してください。
  9. ブランチについて -ブランチの切り替え- ブランチとは • 履歴の流れを分岐して記録していくためのもの • 分岐したブランチは他のブランチの影響を受けない →同リポジトリ中で複数の変更を同時に進めていくことができる! A B

    C O X リリース版の履歴 新機能の追加 バグの修正 Bでブランチを生成することで、同時に複数の作業 (C,O,X)をそれぞれ行うことができる ちなみに、リポジトリを作成した際のブランチを「 master」といって、今回でいう A-B-Cがそれにあたる
  10. ブランチの生成 -ブランチの切り替え- ブランチの確認 ブランチ一覧を表示して現在のブランチ名を確認する(※1) $ git branch ブランチの生成 ブランチ名を半角英数字(数字のみは不可)で入力し生成 今回は適当に「test」(※2)としておく

    $ git branch [ブランチ名] ※1.実はここに現在のブランチ名が記述されている ブランチの再確認 ブランチ一覧から新規ブランチが生成されているか確認 $ git branch ※2.本来は作業概要(add_ReadBackSensor等)を書く
  11. Pull Requestへのレビュー -複数人での管理- Pull Requestに対してコメント pushされて内容が問題ないか レビュアー レビュアーはコメントが書ける ここから変更箇所を確認できる リモートのマスターにマージ

    レビュアーはpushされた内容が 問題ないかチェックをする この時、修正があれば コメントを書く 内容に問題がなければ、 リモートのマスターへマージを行う