SlideShare una empresa de Scribd logo
1 de 119
Descargar para leer sin conexión
Git 勉強会
卒論はGitで管理しましょう回
@kinmemodoki
*卒論については104pageから
第⼆回
2
参考資料(Git)
Git講習 masawada⽒
http://sssslide.com/speakerdeck.com/masawada/gitjiang-xi-2014-dot-04-dot-15
Git チュートリアル
https://www.atlassian.com/ja/git
覚えていってほしいもの
1. git の準備 init
2. コミット add & commit
3. 巻き戻し操作 rebase
4. ブランチ操作 brunch	& marge
5. リモートリポジトリ操作 clone & pull	& push
3
はじめに
What	is	git?
“Git” ってなんですか
Gitは、プログラムのソースコードなどの
変更履歴を記録・追跡するための
分散型バージョン管理システムである。
4Wikipedia[git]:http://ja.wikipedia.org/wiki/Git
Wikipediaより
What	is	git?
プログラムの基礎っぽいところができたとき
5
次はチャット機能を
追加しようかな
でもヘタに変えたら
動かなくなるかも…
What	is	git?
プログラムの基礎っぽいところができたとき
6
新しいディレクトリに
コピーして編集しよう!!
What	is	git?
7
どれが最新…?
⼀個前のはどれ…?
What	is	git?
8
ソースを特定の時期の
状態にもどしたい…
What	is	git?
9
チーム開発で最新ファイルの
共有をしたい…
ソースコード編集して新機能追加しました
お前が編集したのは前バージョンのものだ!
What	is	git?
10
そんな問題を解決!
What	is	git?
11
• コードの状態を保存
• 更新した内容がわかる
• チームでの開発だともっと便利
12
0.	gitの準備
Windows
1.	http://git-scm.com/downloads からインストール
13
0.	gitの準備
2.	Git Bash	を起動
Mac
1.	http://git-scm.com/downloads からインストール
14
0.	gitの準備
Mac
2.	pkgファイルをインストール
3.	shファイル(シェルスクリプト)使ってパス設定
15
0.	gitの準備
確認
「git --version」を⼊⼒し
versionが表⽰されたら完了
16
0.	gitの準備
17
1.	プログラミングをする前
18
$ git init <directory>
1.プログラミングをする前
新しい
作業ディレクトリ
.gitフォルダを含む新規フォルダが作成される
+
.git
19
$ git init
1.プログラミングをする前
カレントディレクトリ .git
カレントフォルダに.gitディレクトリが作成される
+
データの編集履歴の保存場所
昔の状態に戻りたい時に参照
20
1.プログラミングをする前
.git
リポジトリ
データの編集履歴の保存場所
昔の状態に戻りたい時に参照
21
1.プログラミングをする前
.git
リポジトリ
データベース的な感じ
git管理するファイルの例外を登録
(卒論pdfや外部ライブラリなど...)
22
1.プログラミングをする前
.gitignore
情報漏えいや履歴データの節約になる
23
2.	コード編集後
24
2.	コード編集後
ワークツリー
編集履歴をリポジトリに保存する流れ
ワークツリーでファイルを追加/編集/削除
(作業ディレクトリ)
25
2.	コード編集後
ワークツリー インデックス
編集履歴をリポジトリに保存する流れ
リポジトリに登録したいファイルを追加
(データベース)
26
2.	コード編集後
ワークツリー リポジトリインデックス
編集履歴をリポジトリに保存する流れ
追加したファイルをリポジトリに登録
27
2.	コード編集後
編集履歴をリポジトリに保存する流れ
add commit
ワークツリー リポジトリインデックス
28
[filename] を インデックスに登録
$ git add [filename]
2.	コード編集後
ワークツリー インデックス
add
29
作業ディレクトリ追加/変更されたファイルをadd
$ git add .
2.	コード編集後
ワークツリー インデックス
add
30
ワークツリーに追加/変更/削除されたファイルをadd
$ git add -A
2.	コード編集後
ワークツリー インデックス
add
31
2.	コード編集後
作業
ディレクトリ
リポジトリ
ステージング
エリア
編集履歴をリポジトリに保存する流れ
add
編集したファイルを登録する準備ができました
32
$ git commit
リポジトリ
ステージング
エリア
commit
登録されたファイルをリポジトリにすべて保存
2.	コード編集後
commit後のコメント⼊⼒(vim)
33
2.	コード編集後
何の更新をしたかをコメント
34
$ git commit –m “comment”
リポジトリワークツリー
commit
コメントをしつつコミット
2.	コード編集後
リポジトリに登録完了!
(これで過去のファイルを復元できる!)
35
リポジトリ登録完了
36
$ git status
ファイルのadd状態を表⽰
2.	コード編集後
ワークツリー インデックス
37
リポジトリのログを表⽰
$ git log
2.	コード編集後
リポジトリlog
38
2.	コード編集後
リポジトリの “詳しい” ログを表⽰
コメント
⽇付
更新者
39
リポジトリの “短い” ログを表⽰
$ git log --oneline
2.	コード編集後
リポジトリlog
40
2.	コード編集後
リポジトリの “簡易的” ログを表⽰
コメント
Tips
41
42
What is	staging?
インデックスっている?
4343
インデックスっている?
編集
ファイル
リポジトリ
commit
What is	staging?
4444
チャット機能&履歴閲覧機能を
実装したぞ!!
chat.js history.js
チャット機能を付けるために変更したファイル
What is	staging?
4545
chat.js
リポジトリ
history.js
まとめて
commit
「chat&history機能つけました」
What is	staging?
4646
リポジトリlog
3/14「chatとhistory機能つけた」
3/12「基本機能つけた」
New
Old
What is	staging?
4747
その後…
history機能でバグ発⾒
「history機能を実装し直しだ…」
リセットしよう!
What is	staging?
4848
リポジトリlog
3/14「chatとhistory機能つけた」
3/12「基本機能つけた」
イマココ
What is	staging?
4949
リポジトリlog
3/14「chatとhistory機能つけた」
3/12「基本機能つけた」⼀個前
「chat機能も実装し直しじゃねーか…」
What is	staging?
5050
http://protectasapporo.blog.fc2.com/blog-entry-205.html
What is	staging?
5151
なんてことになる前に!
http://protectasapporo.blog.fc2.com/blog-entry-205.html
What is	staging?
5252
chat.js リポジトリ
history.js
commit
「chat機能つけました」
リポジトリ
commit
「history機能つけました」
commitはしっかり分けましょう
※分け⽅はいろいろ
commitしたらhistoryを編集
What is	staging?
5353
チャット機能をcommitする前に
history.js作っちゃったぞ!
history.jsは消さなきゃダメ…?
What is	staging?
5454
インデックス
What is	staging?
5555
commitchat.js
history.js
「chat機能つけました」
add
addしない
What is	staging?
5656
commitchat.js
history.js
「history機能つけました」
add
What is	staging?
5757
What is	staging?
インデックス
良いcommitをするための
整理場所
5858
Tips
ワークツリー リポジトリインデックス
編集履歴をリポジトリに保存する流れ
add commit
git できるようになったこと
・リポジトリに登録できるようになった
59
おさらい
でてきたコマンド
・git init 初期準備
・git add 登録するファイルを選ぶ
・git commit リポジトリへ登録
・git status add状態を表⽰
・git log commitの履歴を表⽰
60
3.	巻き戻したいとき
61
3.	巻き戻したいとき
Tips:コミットの指定⽅法
3/14「4th	commit」 ------>		HEAD
3/12「3rd	commit」 ------>		HEAD^
3/10「2nd	commit」 ------>		HEAD^^
3/8	「1st commit」 ------>		HEAD^^^
New
Old
62
$ git reset (option) (commit ID)
3.	巻き戻したいとき
↑ commit	ID(commit	IDは HEAD^^	でも指定できる)
63
3.	巻き戻したいとき
git reset (option)
何を戻すのかを指定可能
作業ディレクトリ インデックス リポジトリ(オプション)
--hard
(no	option)
--soft 今のまま
今のまま
今のまま
64
3.	巻き戻したいとき
間違えてaddした!!
65
ステージングファイルを前回のコミット時に
$ git reset HEAD
3.	巻き戻したいとき
ステージング
ファイル
66
3.	巻き戻したいとき
過去に戻りたい!!
67
$ git reset --hard HEAD^^
3.	巻き戻したいとき
1st commit
HEAD^^
2nd	commit
HEAD^
latest	commit
HEAD
ワークツリー
68
3.	巻き戻したいとき
間違えてcommitした!!
69
直前のコミットをキャンセルしてコミット
$ git commit --amend
3.	巻き戻したいとき
新規コミット前コミット内容
70
前のコミットをキャンセルしてコミット
$ git commit --amend
3.	巻き戻したいとき
新規コミット前コミット内容
上書き保存
71
4.	新機能を追加したいとき
72
4.	新機能を追加したいとき
ブランチ
brunch枝
73
4.	新機能を追加したいとき
ブランチ(branch)
複数の機能を並⾏して作成したり
リリース版やhot	fix版作ったりするときに利⽤
チャット機能
画像アップ機能
主機能
commit
commit
74
$ git branch [name]
name
master
commit デフォルトは「master」
ブランチを新規作成
4.	新機能を追加したいとき
75
$ git checkout [name]
name
master
commit
編集中のブランチを変更
4.	新機能を追加したいとき
編集中
76
$ git merge [name]
name
master
commit
ブランチを統合
4.	新機能を追加したいとき
編集中
commit
77
4.	新機能を追加したいとき
ブランチの流れ
作成 移⾏ 編集 保存 移⾏ 統合
master
commit
編集中
78
4.	新機能を追加したいとき
ブランチの流れ
chat
master
commit
作成 移⾏ 編集 保存 移⾏ 統合
$	git brunch	chat
編集中
79
4.	新機能を追加したいとき
ブランチの流れ
chat
master
commit
作成 移⾏ 編集 保存 移⾏ 統合
$	git checkout	chat
編集中
80
4.	新機能を追加したいとき
ブランチの流れ
chat
master
commit
作成 移⾏ 編集 保存 移⾏ 統合
$	vim	sample.java	とか
編集中
81
4.	新機能を追加したいとき
ブランチの流れ
chat
master
commit
作成 移⾏ 編集 保存 移⾏ 統合
$	git commit
編集中
commit
82
4.	新機能を追加したいとき
ブランチの流れ
chat
master
commit
作成 移⾏ 編集 保存 移⾏ 統合
$	git checkout	master
編集中
commit
83
4.	新機能を追加したいとき
ブランチの流れ
chat
master
commit
作成 移⾏ 編集 保存 移⾏ 統合
$	git merge	chat
編集中
commit
84
4.	新機能を追加したいとき
コンフリクト
(マージの衝突)
85
4.	新機能を追加したいとき
コンフリクト
(マージの衝突)
86
4.	新機能を追加したいとき
コンフリクト
同じファイルに違う編集をした状態でマージしたとき
TAKENOKO	is	GOD
KINOKO	is	GOD
主機能
commit
commit
commit
コンフリクトのエラー対処法
87
<<<<<<<HEAD
echo("TAKENOKO	is	GOD");
=======
echo("KINOKO	is	GOD");
>>>>>>>	kinoko
コンフリクト状態のファイルを
編集してコミット
4.	新機能を追加したいとき
コンフリクトのエラー対処法
88
<<<<<<<HEAD
echo("TAKENOKO	is	GOD");
=======
echo("KINOKO	is	GOD");
>>>>>>>	kinoko
コンフリクト状態のファイルを
編集してコミット
消去
4.	新機能を追加したいとき
コンフリクトのエラー対処法
89
echo("TAKENOKO	is	GOD");
コンフリクト状態のファイルを
編集してコミット
TAKENOKO	is	GOD
4.	新機能を追加したいとき
5.	リモートでリポジトリを使う
90
91
5.	リモートでリポジトリを使う
ひとりでバージョン管理するには
92
5.	リモートでリポジトリを使う
みんなでバージョン管理するには
要:みんながアクセスできるリポジトリ
R
93
5.	リモートでリポジトリを使う
R リモートリポジトリ
それぞれの計算機にある
ローカルなリポジトリとは別物の
共有リポジトリ
94
5.	リモートでリポジトリを使う
R リモートリポジトリ
95
5.	リモートでリポジトリを使う
作業
ディレクトリ
リポジトリ
ステージング
エリア
add commit
編集履歴をリポジトリに保存する流れ
96
5.	リモートでリポジトリを使う
作業
ディレクトリ
リポジトリ
ステージング
エリア
add commit
R
pull
push
リモート
リポジトリ
リモートリポジトリから
ローカルリポジトリを新規作成してコピー
+ リモートリポジトリの登録
97
5.	リモートでリポジトリを使う
$ git clone [URL]
R
URL:GitHubのコピーしたいリポジトリの
右下を参照(HTTPSの場合)
98
5.	リモートでリポジトリを使う
$ git clone [URL]
リモートリポジトリを変更する場合
URL:GitHubのコピーしたいリポジトリの
右下を参照(HTTPSの場合)
99
5.	リモートでリポジトリを使う
$ git remote set-url origin [URL]
ローカルリポジトリ変更履歴を
リモートリポジトリへアップロード
100
5.	リモートでリポジトリを使う
$ git push
R
リモートリポジトリ変更履歴を
ローカルリポジトリへダウンロード
101
5.	リモートでリポジトリを使う
$ git pull
R
覚えていってほしいもの
1. git の準備 init
2. コミット add & commit
3. 巻き戻し操作 rebase
4. ブランチ操作 brunch	& marge
5. リモートリポジトリ操作 clone & pull	& push
102
まとめ
以上!
103
104
素材元
HUMAN	PICTOGRAM	2.0
http://pictogram2.com/
git
http://git-scm.com/downloads/logos/
105
本題
卒論でGitを管理しよう!!!
106
参考資料
参考: http://fromatom.hatenablog.com/entry/2014/02/09/001136
107
筆者視点
• 論⽂のバックアップができる
校閲者視点
• 誰がどこまで校閲したのかわかる
(先⽣がここまで⾒てるなら、ここから読めばいっか...)
なぜGit管理するのか
108
論⽂作成の流れ
master"init"
とりあえず初期コミット
109
master
$ git branch 1st
論⽂作成の流れ
1st
"init"
110
論⽂作成の流れ
節を書くor修正する毎にコミット
コメントは”add	(節番号)”、”fix	(節番号)” +α	にしましょう
master
1st
"init"
"add	1.1" "add	1.2"
111
論⽂作成の流れ
git push	して⼤学院⽣に校閲してもらう
+	pdf	を WebDav にアップする
master
1st
"init"
"add	1.1" "add	1.2"
112
論⽂作成の流れ
校閲する約束をとりつけたら空コミットで校閲者を記載
校閲中、(やる気があれば)待たずに進める
master
1st
"init"
"add	1.1" "add	1.2"
"revised	by	~~"
113
$ git commit --allow-empty -m "revised by (校閲者)"
論⽂作成の流れ
master
1st
"init"
"add	1.1" "add	1.2"
"revised	by	~~"
114
論⽂作成の流れ
master	ブランチにマージ
masterにコミットが無いとマージコミットは発⽣しません
master"init"
"add	1.1" "add	1.2"
"revised	by	~~"
115
論⽂作成の流れ
以降、別ブランチに切って修正+加筆 ...
master"init"
"add	1.1" "add	1.2"
"revised	by	~~"
"fix	1.1" "add	2.1"
2nd
116
前項(master)と現項(Nst)を
git checkout	で⾏き来できる
(必要なければ全部masterで良いかも)
(校閲の際に前回の校閲との差分も⾒やすそう)
ブランチを切る理由
ブランチ分ける必要ある?
117
実際にやってみよう!
118
1. git clone で論⽂テンプレートをダウンロード
2. リモートリポジトリにgitlabのリポジトリを設定
3. 0thブランチを作成
4. document/introduction.tex の1.1節 を編集
5. コメントつけてコミット
6. リモートリポジトリにプッシュ
7. マージ
やることリスト
119

Más contenido relacionado

La actualidad más candente

Git 版本控制系統 -- 從微觀到宏觀
Git 版本控制系統 -- 從微觀到宏觀Git 版本控制系統 -- 從微觀到宏觀
Git 版本控制系統 -- 從微觀到宏觀
Wen-Tien Chang
 
条件分岐とcmovとmaxps
条件分岐とcmovとmaxps条件分岐とcmovとmaxps
条件分岐とcmovとmaxps
MITSUNARI Shigeo
 

La actualidad más candente (20)

Gitはじめの一歩
Gitはじめの一歩Gitはじめの一歩
Gitはじめの一歩
 
はじめようGit
はじめようGitはじめようGit
はじめようGit
 
今さら聞けない人のためのGitLabの始め方 Ubuntu編
今さら聞けない人のためのGitLabの始め方 Ubuntu編今さら聞けない人のためのGitLabの始め方 Ubuntu編
今さら聞けない人のためのGitLabの始め方 Ubuntu編
 
Redmineとgitの 連携利用事例
Redmineとgitの 連携利用事例Redmineとgitの 連携利用事例
Redmineとgitの 連携利用事例
 
工程師必備第一工具 - Git
工程師必備第一工具 - Git工程師必備第一工具 - Git
工程師必備第一工具 - Git
 
Git 版本控制系統 -- 從微觀到宏觀
Git 版本控制系統 -- 從微觀到宏觀Git 版本控制系統 -- 從微觀到宏觀
Git 版本控制系統 -- 從微觀到宏觀
 
条件分岐とcmovとmaxps
条件分岐とcmovとmaxps条件分岐とcmovとmaxps
条件分岐とcmovとmaxps
 
Glibc malloc internal
Glibc malloc internalGlibc malloc internal
Glibc malloc internal
 
Git flowの活用事例
Git flowの活用事例Git flowの活用事例
Git flowの活用事例
 
並列化による高速化
並列化による高速化 並列化による高速化
並列化による高速化
 
Redmineをちょっと便利に! プログラミング無しで使ってみるREST API
Redmineをちょっと便利に! プログラミング無しで使ってみるREST APIRedmineをちょっと便利に! プログラミング無しで使ってみるREST API
Redmineをちょっと便利に! プログラミング無しで使ってみるREST API
 
デキるプログラマだけが知っているコードレビュー7つの秘訣
デキるプログラマだけが知っているコードレビュー7つの秘訣デキるプログラマだけが知っているコードレビュー7つの秘訣
デキるプログラマだけが知っているコードレビュー7つの秘訣
 
きつねさんでもわかるLlvm読書会 第2回
きつねさんでもわかるLlvm読書会 第2回きつねさんでもわかるLlvm読書会 第2回
きつねさんでもわかるLlvm読書会 第2回
 
Virtual Machine Constructions for Dummies
Virtual Machine Constructions for DummiesVirtual Machine Constructions for Dummies
Virtual Machine Constructions for Dummies
 
バージョン管理システム比較資料
バージョン管理システム比較資料バージョン管理システム比較資料
バージョン管理システム比較資料
 
寫給大家的 Git 教學
寫給大家的 Git 教學寫給大家的 Git 教學
寫給大家的 Git 教學
 
TMUX Rocks!
TMUX Rocks!TMUX Rocks!
TMUX Rocks!
 
新たなgitのブランチモデル「Git Feature Flow」!Git Flow,Git Hub Flow,Git Lab Flowを超えれるか?
新たなgitのブランチモデル「Git Feature Flow」!Git Flow,Git Hub Flow,Git Lab Flowを超えれるか?新たなgitのブランチモデル「Git Feature Flow」!Git Flow,Git Hub Flow,Git Lab Flowを超えれるか?
新たなgitのブランチモデル「Git Feature Flow」!Git Flow,Git Hub Flow,Git Lab Flowを超えれるか?
 
Git由超淺入超深
Git由超淺入超深Git由超淺入超深
Git由超淺入超深
 
コンセプトから理解するGitコマンド
コンセプトから理解するGitコマンドコンセプトから理解するGitコマンド
コンセプトから理解するGitコマンド
 

Destacado

Apache Bloodhound と Trac のさいきん
Apache Bloodhound と Trac のさいきんApache Bloodhound と Trac のさいきん
Apache Bloodhound と Trac のさいきん
Jun Omae
 
Git hubで雑誌記事を執筆するのは間違っているだろうか
Git hubで雑誌記事を執筆するのは間違っているだろうかGit hubで雑誌記事を執筆するのは間違っているだろうか
Git hubで雑誌記事を執筆するのは間違っているだろうか
Kakigi Katuyuki
 
SCMBC Git入門セッション発表資料
SCMBC Git入門セッション発表資料SCMBC Git入門セッション発表資料
SCMBC Git入門セッション発表資料
bleis tift
 
140611だいたいわかるGit
140611だいたいわかるGit140611だいたいわかるGit
140611だいたいわかるGit
Masashi Tsuru
 

Destacado (20)

今年の卒論はGithubで決まり!
今年の卒論はGithubで決まり!今年の卒論はGithubで決まり!
今年の卒論はGithubで決まり!
 
Github勉強会
Github勉強会Github勉強会
Github勉強会
 
Git (実践入門編)
Git (実践入門編)Git (実践入門編)
Git (実践入門編)
 
Apache Bloodhound と Trac のさいきん
Apache Bloodhound と Trac のさいきんApache Bloodhound と Trac のさいきん
Apache Bloodhound と Trac のさいきん
 
GIT Workflows
GIT Workflows GIT Workflows
GIT Workflows
 
テストマネージャ試験対策勉強会
テストマネージャ試験対策勉強会テストマネージャ試験対策勉強会
テストマネージャ試験対策勉強会
 
Terraforming
TerraformingTerraforming
Terraforming
 
Git hubで雑誌記事を執筆するのは間違っているだろうか
Git hubで雑誌記事を執筆するのは間違っているだろうかGit hubで雑誌記事を執筆するのは間違っているだろうか
Git hubで雑誌記事を執筆するのは間違っているだろうか
 
はじめてのGit #gitkyoto
はじめてのGit #gitkyotoはじめてのGit #gitkyoto
はじめてのGit #gitkyoto
 
Railsチュートリアル(second)を終えて
Railsチュートリアル(second)を終えてRailsチュートリアル(second)を終えて
Railsチュートリアル(second)を終えて
 
サラリーマンでギョーミーなプログラマ(つまりオレ)でも片手間で作れるXFD
サラリーマンでギョーミーなプログラマ(つまりオレ)でも片手間で作れるXFDサラリーマンでギョーミーなプログラマ(つまりオレ)でも片手間で作れるXFD
サラリーマンでギョーミーなプログラマ(つまりオレ)でも片手間で作れるXFD
 
git gitにされたオレの屍を超えていけ
git gitにされたオレの屍を超えていけgit gitにされたオレの屍を超えていけ
git gitにされたオレの屍を超えていけ
 
SCMBC Git入門セッション発表資料
SCMBC Git入門セッション発表資料SCMBC Git入門セッション発表資料
SCMBC Git入門セッション発表資料
 
Wagby on Cloud Foundry
Wagby on Cloud FoundryWagby on Cloud Foundry
Wagby on Cloud Foundry
 
ゆかりん時計の話
ゆかりん時計の話ゆかりん時計の話
ゆかりん時計の話
 
140611だいたいわかるGit
140611だいたいわかるGit140611だいたいわかるGit
140611だいたいわかるGit
 
Git 入門
Git 入門Git 入門
Git 入門
 
[JavaDo] JAX-RS ハンズオン 第2部
[JavaDo] JAX-RS ハンズオン 第2部[JavaDo] JAX-RS ハンズオン 第2部
[JavaDo] JAX-RS ハンズオン 第2部
 
Gitの使い方あれこれ
Gitの使い方あれこれGitの使い方あれこれ
Gitの使い方あれこれ
 
はじめてのソフトウェアテスト
はじめてのソフトウェアテストはじめてのソフトウェアテスト
はじめてのソフトウェアテスト
 

Similar a Git勉強会 2016 Gitで卒論を管理しよう回

猫にはわからないGit講座
猫にはわからないGit講座猫にはわからないGit講座
猫にはわからないGit講座
Yusei Yamanaka
 
20120324 git training
20120324 git training20120324 git training
20120324 git training
Takeshi AKIMA
 
@s_ssk13さん向けGitHub入門
@s_ssk13さん向けGitHub入門@s_ssk13さん向けGitHub入門
@s_ssk13さん向けGitHub入門
Takashi Imagire
 
Githubことはじめ
GithubことはじめGithubことはじめ
Githubことはじめ
tikitikipoo
 

Similar a Git勉強会 2016 Gitで卒論を管理しよう回 (20)

Git 勉強会
Git 勉強会Git 勉強会
Git 勉強会
 
Github第4章
Github第4章Github第4章
Github第4章
 
Version Control System Tutorial バージョン管理システムチュートリアル
Version Control System Tutorial バージョン管理システムチュートリアルVersion Control System Tutorial バージョン管理システムチュートリアル
Version Control System Tutorial バージョン管理システムチュートリアル
 
Gitの紹介
Gitの紹介Gitの紹介
Gitの紹介
 
はじめてのGit
はじめてのGitはじめてのGit
はじめてのGit
 
猫にはわからないGit講座
猫にはわからないGit講座猫にはわからないGit講座
猫にはわからないGit講座
 
20120324 git training
20120324 git training20120324 git training
20120324 git training
 
バージョン管理
バージョン管理バージョン管理
バージョン管理
 
Git地図
Git地図Git地図
Git地図
 
GitHub勉強会
GitHub勉強会GitHub勉強会
GitHub勉強会
 
@s_ssk13さん向けGitHub入門
@s_ssk13さん向けGitHub入門@s_ssk13さん向けGitHub入門
@s_ssk13さん向けGitHub入門
 
ソフトウェア工学2023 08 GitHub
ソフトウェア工学2023 08 GitHubソフトウェア工学2023 08 GitHub
ソフトウェア工学2023 08 GitHub
 
Git勉強会
Git勉強会Git勉強会
Git勉強会
 
Shizudev git hub宿題
Shizudev git hub宿題Shizudev git hub宿題
Shizudev git hub宿題
 
バージョン管理システムチュートリアル
バージョン管理システムチュートリアルバージョン管理システムチュートリアル
バージョン管理システムチュートリアル
 
Gitを使ってみませんか
Gitを使ってみませんかGitを使ってみませんか
Gitを使ってみませんか
 
実践 Git - 低レベルに知る Git
実践 Git - 低レベルに知る Git実践 Git - 低レベルに知る Git
実践 Git - 低レベルに知る Git
 
Githubことはじめ
GithubことはじめGithubことはじめ
Githubことはじめ
 
gitを使う準備をしよう - 初級編
gitを使う準備をしよう - 初級編gitを使う準備をしよう - 初級編
gitを使う準備をしよう - 初級編
 
Git
GitGit
Git
 

Git勉強会 2016 Gitで卒論を管理しよう回