Recommended
Github勉強会~Git・Githubを用いて共同開発・バージョン管理をしよう~
大容量ファイルもGitで管理。 Git LFSの使い方
GitLab Meetup Tokyo #1 LT:「わりと大きい会社でGitLabをホスティングしてみた話」
日本androidの会 中国支部 29回勉強会 github
Github for windows学内での使い方
Angular + Typedoc + Github Page
VCS - Version Control System at Security and Programming camp 2011
ホームディレクトリに埋もれた便利なコードをさがせ!
More Related Content What's hot (20)
Github勉強会~Git・Githubを用いて共同開発・バージョン管理をしよう~
大容量ファイルもGitで管理。 Git LFSの使い方
GitLab Meetup Tokyo #1 LT:「わりと大きい会社でGitLabをホスティングしてみた話」
日本androidの会 中国支部 29回勉強会 github
Github for windows学内での使い方
Angular + Typedoc + Github Page
VCS - Version Control System at Security and Programming camp 2011
ホームディレクトリに埋もれた便利なコードをさがせ!
Viewers also liked (20)
Pnl 2 ceb - sonho-ou_realidade
2012 06-06 - momentos musicais
Para Todas Las Mujeres Y Hombres
Turk Savunma Sanayii Ürünleri 2012
Europa door de eeuwen heen
Phanmemdangtinquangcaovivayhom
Chemical engineering-course
Similar to 第1回Git勉強会 (20) Python for Data Analysis第1回勉強会(+git入門)
Git勉強会 2016 Gitで卒論を管理しよう回
Version Control System Tutorial バージョン管理システムチュートリアル
Git SourceTreeでバージョン管理しよう
第1回Git勉強会9. あるゼミ生Aの開発記録
• 「あれ・・・・・・
実験用PCだと動かな
い」
• 「たしか3日前は
動いたはず」
• 3日前のコードから開
発をやり直し
10. あるゼミ生Aの開発記録
• 「あ、しまった。3日
前のコードにはあの
新機能が無い!」
• 「前書いたコードか
らコピーしよう……」
• しだいにどれが
「最新のコード」
なのか分からなく
なってくる
13. 日付ごとのバックアップの問題
点
• 問題点1:
– 日付ごとにまるごとバックアップは、後から
何を変更したのかが分かりにくい
• 問題点2:
– まるごとバックアップしていくので、ファイ
ルサイズが膨大になる
• 問題点3:
– プログラム開発が枝分かれすると混沌
– 例:実験用システムをメンテナンスしつつ、
最新版のプログラムを開発する場合
15. バージョン管理システム
(Version Control System)
• プログラムの変更履歴を管理するシステム
• OSSプロジェクトなどのように、複数人が同時
にプログラムを開発できるようにするために生
み出された
• CVS, Subversion, Mercurial, Bazzarなど様々なツー
ルが存在する
20. Gitでのバージョン管理方法
2012年06月27日 リビジョン
コミット (ディレクトリの作成)
ディレクトリを作った
ブランチ
インデックス
21. Gitでのバージョン管理方法
2012年06月27日
(ディレクトリの作成)
リビジョン
ディレクトリを作った
ブランチ
インデックス
(rbファイルの追加)
22. Gitでのバージョン管理方法
2012年06月27日 リビジョン
ディレクトリを作った
ブランチ
2012年06月28日 インデックス
コミット Rubyのプログラムを書いた
24. Gitでのバージョン管理方法
2012年06月27日 リビジョン
ディレクトリを作った
ブランチ
2012年06月28日 インデックス
Rubyのプログラムを書いた
2012年06月29日
コミット HTMLを書いた
26. Gitでのバージョン管理方法
2012年06月27日 リビジョン
ディレクトリを作った
ブランチ
2012年06月28日 インデックス
Rubyのプログラムを書いた
2012年06月29日
HTMLを書いた
2012年06月30日
コミット Rubyプログラムを書きなおし
29. Windowsへの
git インストールは鬼門
• Windows には4通りのインストール方法
1. msysgit というコマンドライン版をインストー
ル
2. Git for Windows というGUI中心の版をインス
トール
3. Windows にCygWin(Unix)をいれてインストール
4. WindowsにVMWareでLinuxを入れてインストー
ル
• 勉強会でインストールすると終わらないの
で、今回はインストールは省略
31. git の設定 (git config)
$ git config --global user.name YOURNAME
$ git config --global user.email YOUR@ADDRESS
$ git config --global --list
• コミットする際に登録される名前、
メールアドレスを設定する
32. git リポジトリの作成 (git init)
$ mkdir test
$ cd test
$ git init
Initialized empty Git repository in
/Users/Tsunekawa7/development/test/.git/
• リポジトリにするディレクトリ (test) を作
成し、git init で初期化
35. ファイルの確認 (git status)
$ git status
# On branch master
#
# Initial commit
#
# Untracked files:
# (use "git add <file>..." to include in what will be committed)
#
# README
nothing added to commit but untracked files present (use "git
add" to track)
• さっき保存したファイルが「Untracked
files」として表示されている
36. ファイルを作成する (git add )
$ git add README
• git add でファイルをインデックスに追加
• git status で確認すると「Tracked files」とし
てREADME が登録されている
37. ファイルを作成する (git add )
$ git status
# On branch master
#
# Initial commit
#
# Changes to be committed:
# (use "git rm --cached <file>..." to unstage)
#
# new file: README
#
• git status で確認すると変更の記録として
README が登録されている
38. 変更をコミットする (git
commit )
$ git commit –m “initial commit”
[master (root-commit) 056b356] initial commit
1 files changed, 1 insertions(+), 0 deletions(-)
create mode 100644 README
• git commit で登録された変更を「リビ
ジョン」としてコミット
• 「READMEというファイルを追加した」とい
う変更が記録される
39. 変更をコミットする (git log )
$ git log
commit
056b3567d69efdbb34f404db093e78016fffdae3
Author: kunimiya toji <kunimiya@example.com>
Date: Sun Jul 1 00:14:03 2012 +0900
initial commit
• git log でリビジョンの履歴を閲覧できる
42. ここまでのおさらい
git init gitリポジトリの初期化
git status インデックスの内容を表示
git diff 最新リビジョンとの差分を表
示
git add ワーキングツリーに変更を追
加
git commit 変更のコミット
git log 変更履歴の表示
43. 次回予告
• 今回ならった範囲では、まだ日付バック
アップとあまり変わらない
• Git はブランチを駆使したときに真の力を
発揮
• 第2回: ブランチを活用した効率的なプロ
グラミング方法
• 第3回: push, pull を使って他人とプログラ
ムコードを共有する