SlideShare a Scribd company logo
今年の卒論はGitHubで決まり!
  〜バージョン管理で他の子と差をつけちゃえ♡〜




                     Presented by Atom
あじぇんだぁ

1.Githubでなにがおいしいの?

2.Gitってなに?

3.Githubってなに?

4.実際にやってみよう
みんな、論文やソース管理どうしてる?
「Dropboxでバックアップしてる!」
死は近い
バージョン管理、しましょう。
しないとどうなる?
( ^o^)<コードを改良しよう!
( ^o^)<コードを改良しよう!


( ˘⊖˘) 。o(まてよ、前のコードの方が良かったんじゃないか?)
( ^o^)<コードを改良しよう!


( ˘⊖˘) 。o(まてよ、前のコードの方が良かったんじゃないか?)


|バックアップ| ┗(☋` )┓三
( ^o^)<コードを改良しよう!


( ˘⊖˘) 。o(まてよ、前のコードの方が良かったんじゃないか?)


|バックアップ| ┗(☋` )┓三


( ◠‿◠ )貴様はすでに上書き保存している
( ^o^)<コードを改良しよう!


( ˘⊖˘) 。o(まてよ、前のコードの方が良かったんじゃないか?)


|バックアップ| ┗(☋` )┓三


( ◠‿◠ )貴様はすでに上書き保存している


▂▅▇█▓▒░( ω )░▒▓█▇▅▂うわあああああ
( ^o^)<コードを改良しよう!


( ˘⊖˘) 。o(まてよ、前のコードの方が良かったんじゃないか?)


 最高にクールじゃない!!
|バックアップ| ┗(☋` )┓三


( ◠‿◠ )貴様はすでに上書き保存している


▂▅▇█▓▒░( ω )░▒▓█▇▅▂うわあああああ
よくある解決方法
今年の卒論はGithubで決まり!
今年の卒論はGithubで決まり!
最高にクールじゃない!!
そこでバージョン管理ですよ、奥さん。
ファイル変更履歴を全部
 管理してくれる♡
バージョン管理する愉快な仲間たち


 ・subversion

 ・git

 ・mercurial

 ・CVS
バージョン管理する愉快な仲間たち


 ・subversion

 ・git

 ・mercurial

 ・CVS
今年の卒論はGithubで決まり!
Gitとはなんぞや?



・分散型バージョン管理システム
Gitとはなんぞや?



・分散型バージョン管理システム

・Linux kernel開発でも使われている
Gitとはなんぞや?



・分散型バージョン管理システム

・Linux kernel開発でも使われている

・Ruby on Rails、Perl、Android開発でも
Gitとはなんぞや?



・分散型バージョン管理システム

・Linux kernel開発でも使われている

・Ruby on Rails、Perl、Android開発でも
集中型
分散型
集中型のバージョン管理システム



 Aさん

                    リポジトリ
                    (作業領域)

               ット
変更点         コミ


project.c
集中型のバージョン管理システム




              リポジトリ
              (作業領域)

         ット
変更点   コミ
集中型のバージョン管理システム



変更点   コミ
          ット



               リポジトリ
               (作業領域)

         ット
変更点   コミ
集中型のバージョン管理システム



変更点   コミ
          ット               ット
                                変更点
                        コミ


               リポジトリ
               (作業領域)

         ット
変更点   コミ
集中型のバージョン管理システム



変更点   コミ
          ット               ット
                                  変更点
                        コミ


               リポジトリ
               (作業領域)
                        コミ
         ット                  ット
変更点   コミ
                                  変更点
分散型のバージョン管理システム

         Aさん


  変更点


コミット




  個人
 リポジトリ
分散型のバージョン管理システム

            サーバー上
  変更点

              共有
コミット        リポジトリ




  個人
 リポジトリ
分散型のバージョン管理システム



  変更点

                    共有
コミット              リポジトリ
              ュ
             シ
          ッ
         プ


  個人
 リポジトリ
分散型のバージョン管理システム



  変更点

                    共有
コミット              リポジトリ
              ュ
             シ
          ッ
         プ
                          プ
                           ル
  個人                            個人
 リポジトリ                         リポジトリ
分散型のバージョン管理システム



  変更点                           変更点

                    共有
コミット              リポジトリ           コミット
              ュ
             シ
          ッ
         プ
                          プ
                           ル
  個人                            個人
 リポジトリ                         リポジトリ
分散型のバージョン管理システム



  変更点                                    変更点

                    共有
コミット              リポジトリ                    コミット
                               プ
              ュ                 ッ
             シ                     シ
          ッ                         ュ
         プ
                          プ
                           ル
  個人                                     個人
 リポジトリ                                  リポジトリ
分散型のバージョン管理システム



  変更点                                         変更点

                         共有
コミット                   リポジトリ                    コミット
                                    プ
              ュ                      ッ
             シ                          シ
          ッ                              ュ
         プ
                               プ
                   ル            ル
  個人              プ                           個人
 リポジトリ                                       リポジトリ
分散型のバージョン管理システム

                       サーバー
  変更点                                         変更点

                         共有
コミット                   リポジトリ                    コミット
                                    プ
              ュ                      ッ
             シ                          シ
          ッ                              ュ
         プ
                               プ
                   ル            ル
  個人              プ                           個人
 リポジトリ                                       リポジトリ

              ローカル
分散型のバージョン管理システム


                  SSHサーバ
   変更点                                        変更点

                         共有
コミット                   リポジトリ                    コミット
                                    プ
              ュ                      ッ
             シ                          シ
          ッ                              ュ
         プ
                               プ
                   ル            ル
  個人              プ                           個人
 リポジトリ                                       リポジトリ
分散型のバージョン管理システム



   変更点                                        変更点

自分でサーバ管理したくない!
コミット
                         共有
                       リポジトリ                    コミット
                                    プ
              ュ                      ッ
             シ                          シ
          ッ                              ュ
         プ
                               プ
                   ル            ル
  個人              プ                           個人
 リポジトリ                                       リポジトリ
GitHub
GitHubとはなんぞや?



・Gitのホスティングサイト

・ソーシャルコーディング

・そのままデプロイ(with heroku)
Githubにやってもらおう!


                       GitHub
  変更点                                         変更点

                         共有
コミット                   リポジトリ                    コミット
                                    プ
              ュ                      ッ
             シ                          シ
          ッ                              ュ
         プ
                               プ
                   ル            ル
  個人              プ                           個人
 リポジトリ                                       リポジトリ
GitHubが無いと



・サーバを立てる

・SSHの設定をユーザー増加毎に行う

・容量の追加やUPS管理必要
GitHubが無いと



・サーバを立てる

めんどくせぇ!!
・SSHの設定をユーザー増加毎に行う

・容量の追加やUPS管理必要
https://github.com
試してみよう
1.アカウント
2.リポジトリ作成
3.コマンドォ!?
git diff

git status

git add

git commit

git push

git pull
4.コツ
まずはpull
小刻みにcommit
大胆にpush
まずはpull

小刻みにcommit

 大胆にpush
ゴングを鳴らす

ジャブを浴びせる

右ストレート!
5.黒い画面やだ
GUIアプリもあります


・話者は使わないので、フォローできぬ。

・Mac用、Win用それぞれあります。

・もち英語。
6.練習したい
最悪、死んでもいい
プロジェクトで試そう。
最悪、死んでもいい
プロジェクトで試そう。
http://try.github.com/
7.非公開リポジトリ
https://github.com/edu
8.ブランチって?
commit


master
commit


master


         dev

         branch
省略
9.便利な連携
http://phonegap.com


http://www.heroku.com
次
回予告
1.TeX

2.Emacs

3.zsh
おわり

More Related Content

今年の卒論はGithubで決まり!