[勉強会] Gitのゆるめな勉強会 vol.1に参加しました!

約1ヶ月前になりますが、2/16に京都のコワーキングスペース cotoで行われた「Gitのゆるめな勉強会 vol.1」に参加しました!以前、他のGitの勉強会に参加したのですが、ついて行くのがやっとでしたのでリベンジを兼ねて参加しました。

git_logo

「ゆるめな〜」とタイトルにあるように、難しい内容ではなく、とてもわかりやすかったです。
主催していただいた山本さん、講師の田中さん、菱川さん、松野尾さん、サポートの細谷さん、瀬戸さん、金原さんありがとうございました!

以下は自分のメモとして残します。
当日の流れは次の通りでした。

【ワークショップ】

  • Gitダウンロード
  • CUI仕組みの概念説明と一緒に
  • GitHubのデモンストレーション&実践

【大喜利】Git大喜利!

  • GUIツールの説明(GUIとターミナルの組み合わせの効率化:SourceTree)
  • CodaとGitの連携/C4SAで実際にやっているGithubからのデプロイ
  • WebStorm(PhpStorm)を使って、IDEだとこんなだよ

【ワークショップ】

ワークショップは田中さん作成の「はじめてのgit」というスライド(なんと175枚!)をもとにワークショップが進行されました。

【基本】

インストールはここから http://git-scm.com/
なおMac OSXでのインストール時には、「すべてのアプリケーションを許可」しないとインストールできないので注意

初期設定のコマンドはgit config

$ git config --global user.name "username"
$ git config --global user.email username@sample.com

管理対象フォルダとするコマンドはgit init

$ git init

git init後にできる .git フォルダ内にバックアップや差分が入っている

状態を確認するコマンドはgit status
git statusでUntracked filesと表示されるものはgitで管理されていないファイル/ディレクトリ

管理対象ファイル/ディレクトリとするのは git add

$ git add ファイル名
$ git add ディレクトリ名

管理対象を確定したら、git commitコマンドでコミットする。
コメントは必須。区別できる内容にいものを付けないと、後で何を変更したのかわからなくなる

$ git commit -m "コメント名"

コミットしたログを確認するコマンドが git logコマンド

$ git log --stat

ファイルを更新したのちは以下のコマンドを使う
git statusコマンド →状態を確認
git diffコマンド →差分を確認
git commitコマンド →差分を反映する。 -aオプションで全ファイルを反映

$ git commit -a -m "コメント"

git logコマンド → 変更を表示
コミット時のコメントが

【branchとmerge】
マスターブランチから切り離して作業を行う場合にはbranchを使う

$ git branch ブランチ名

ブランチの切替のコマンドは、git checkout

$ git checkout ブランチ名

ブランチで分岐した分をmasterブランチに反映するにはgit mergeを使う

【GitHub】
ホームディレクトリに .ssh ディレクトリを作成する

$ mkdir .ssh

次に sshの公開鍵/秘密鍵を作成する

$ ssh-keygen -t rsa

公開鍵の中身を表示しコピーし、GitHubの[accountsettings] → [SSH Keys] → 「Add SSH Key」に登録する

GitHubに使うには
GitHubで、[Create a new repo]でレポジトリを作る
レポジトリを作成すると「Create a new repository on the command line」が表示されるので、この手順でレポジトリを作る。

$ git init
$ touch README.mdでファイル作成(GitHubでは必須?)
$ git add README.md
$ git commit -m "コメント"
$ git remote add origin git@github.com@〜
$ git push -u origin master

同様に「Push an existing repository from the command line」が表示されるので、この手順でPushリクエストを送る

$ git remote add origin git@github.com@〜
$ git push -u origin master

なぜGitHubが流行ったか。それはpullrequestがあるから。でもこの機能はgitではなくGitHubの機能

Gitはコマンドからはじめて、GUIツールを使用したほうが良いように感じた。
コマンドからはじめると内部的になにが行われているかわかりやすい
GUIツールはブランチのツリーが視覚的、diffがわかりやすいなどが良い

【GUIツール】

GitX http://gitx.frim.nl/
GitX-dev http://rowanj.github.com/gitx/
SourceTree http://www.sourcetreeapp.com/

参考資料となる資料
まとめ:# Gitのゆるめな勉強会 vol.1
https://gist.github.com/deroter/4978087

こわくないgit

以上