SlideShare ist ein Scribd-Unternehmen logo
1 von 108
イケテルGit勉強会
2012/03/24 @akimatter
自己紹介
秋間武志

福岡に引っ越して約8ヶ月

RBCスタッフやってます

仕事でgitを使って約4年

ノーチラステクノロジーズ福岡開発部隊PM

@akimatter
https://github.com/akm
http://d.hatena.ne.jp/akm/
今日のタイムテーブル
13:00 - Gitってなに?
13:30 - 基本操作のハンズオン
14:30 - Ruby開発サーバの紹介
15:00 - 休憩
15:15 - Githubってなに?
15:30 - チームプレイをやってみよう
16:30 - ディスカッション
17:30 - クロージング、会場片付け
18:00 - 公開スタッフミーティング
アンケート
普段何を使ってます?
     Git

  Mercurial

  Subversion

     CVS

     VSS

    その他

 何も使っていない
Gitってなに?
Gitってなに?


Git(ギット)はプログラムなどのソースコード管
理を行う分散型バージョン管理システム。
http://ja.wikipedia.org/wiki/Git より引用
分散型バージョン管理
システム?
主な操作
Q.分散って必須ですか?



A. 無理に分散しなくてもいいです
集中型のような運用
ひと手間かける違い
ひと手間かける違い

一つのコミットを小さくすることで意図を明確に
できます

クリアなコードの作り方: 意図が伝わるコミット
のしかた

http://www.clear-code.com/blog/2012/3/13.html
他のメリット
動作が速い

リモートリポジトリ(例えば開発サーバのリポジ
トリ)に繋がらない場合でも、コミットを行うこ
とができる

github

いちいち.svnとか作らない
基本操作のハンズオン
最初のコミットまで
cd <プロジェクトの親ディレクトリ>

mkdir iketeru_git
cd iketeru_git
echo ‘Hello, world!’ > README.md
git init
git add README.md
git commit -m “Initial commit”
状態を見てみよう

git status

git diff

git log

git blame README.md
変更を加えてみよう


README.mdに追記

 echo ‘Git, a cool SCM’ >> README.md
もう一度見てみよう

git status

git diff

git log

git blame README.md
変更がstageに乗ってない
$ git status
# On branch master
# Changes not staged for commit:
# (use "git add <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working directory)
#
#	   modified: README.md
#
no changes added to commit (use "git add" and/or "git commit -a")
変更をstageに載せよう


git add README.md
変更がstageに載った

$ git status
# On branch master
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
#	   modified: README.md
#
コミットしよう


git commit -m ‘add my private opinion’
再度見てみよう

git status

git diff

git log

git blame README.md
git log
$ git log
commit 9e46acdca5443bad381c7948c83c77de9508dd53
Author: akm <akima@nautilus-technologies.com>
Date: Fri Mar 16 19:50:28 2012 +0900

  add my private opinion

commit 6d387715e14d7d72c04645b6b486ac2b35f4c88e
Author: akm <akima@nautilus-technologies.com>
Date: Fri Mar 16 19:36:54 2012 +0900

  Initial commit
git blame README.md


$ git blame README.md
^6d38771 (akm 2012-03-16 19:36:54 +0900 1) Hello, world!
9e46acdc (akm 2012-03-16 19:50:28 +0900 2) “Git, a cool SCM”
便利な機能
コマンドを忘れたら


git --help
コマンドを忘れたら


git help <command>
--amend
コミットし直そう


git commit -m ‘add my team opinion’ --amend
--amend
コミットログが変わってる
$ git log
commit 143b2453bc2ce493eaf7d15ed4773486a76902bd
Author: akm <akima@nautilus-technologies.com>
Date: Fri Mar 16 19:50:28 2012 +0900

  add my team opinion

commit 6d387715e14d7d72c04645b6b486ac2b35f4c88e
Author: akm <akima@nautilus-technologies.com>
Date: Fri Mar 16 19:36:54 2012 +0900

  Initial commit
stash
変更を一時保留しよう

作業中

echo ‘now thinking.....’ >> README.md
でも急ぎで別の変更をコミットしないと!

git stash save ‘pend a change for urgent problem’
stash
退避しました
$ git log
commit 143b2453bc2ce493eaf7d15ed4773486a76902bd
Author: akm <akima@nautilus-technologies.com>
Date: Fri Mar 16 19:50:28 2012 +0900

  add my team opinion

commit 6d387715e14d7d72c04645b6b486ac2b35f4c88e
Author: akm <akima@nautilus-technologies.com>
Date: Fri Mar 16 19:36:54 2012 +0900

  Initial commit
stash
listやshowで確認できます


$ git stash list
stash@{0}: On master: pend a change for urgent problem

$ git stash show
 README.md | 1 +
 1 files changed, 1 insertions(+), 0 deletions(-)
stash
変更はなかったことになります


$ git status
# On branch master
nothing to commit (working directory clean)
stash
急ぎの変更をコミット
大急ぎの変更

   エディタで以下のように変更してください

Hello, world!
foo
Git, a cool SCM




git add .
git commit -m 'fix a fatal bug'
stashに退避していた
変更を戻す
$ git stash pop
Auto-merging README.md
# On branch master
# Changes not staged for commit:
# (use "git add <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working directory)
#
#	    modified: README.md
#
no changes added to commit (use "git add" and/or "git commit -a")
Dropped refs/stash@{0} (f8b03350e0885238db913343722e5c345ea4aeb7)
$ cat README.md
Hello, world!
foo
Git, a cool SCM
now thinking.....
stash
改めてコミットしよう

$ git add README.md
$ git commit -m ‘add new line’
ブランチとタグ
ブランチとタグ

ある時点のコミットから別系統の開発を同時に進
めたい場合に作るのがブランチ

リリースなどの重要なタイミングのコミットに対
して貼っておくのがタグ
ブランチとタグ
ブランチを作る
$ git branch RB-1



$ git branch
  RB-1
* master



ブランチRB-1は作られたけど、まだmasterで作業
しています
ブランチを切り替える
$ git checkout RB-1
Switched to branch 'RB-1'



$ git branch
* RB-1
  master

$ git status
# On branch RB-1
nothing to commit (working directory clean)


git checkoutでブランチを切り替えることができ
て、git branchやgit statusで確認できる
まず変更してマージ
$ echo ‘extra line’ >> README.md
$ git add README.md
$ git commit -m ‘add extra line’

これで変更がブランチにコミットされました
$ git checkout master
$ git merge RB-1

これでmasterへのマージは完了
$ cat README.md
Hello, world!
foo
Git, a cool SCM
now thinking.....
extra line
コミットの競合とその解決
masterで変更する
$ git checkout master



$ echo ‘bar’ >> README.md
$ git add README.md
$ git commit -m ‘add bar to the end’
RB-1で変更する
$ git checkout RB-1



$ echo ‘BAZ’ >> README.md
$ git add README.md
$ git commit -m ‘add BAZ to the end’
マージする
 $ git checkout master
 $ git merge RB-1
 Auto-merging README.md
 CONFLICT (content): Merge conflict in README.md
 Automatic merge failed; fix conflicts and then commit the result.




CONFLICT(競合)しちゃった
競合の確認
CONFLICT(競合)しちゃった
 $ git status
 # On branch master
 # Your branch is ahead of 'origin/master' by 1 commit.
 #
 # Unmerged paths:
 # (use "git add/rm <file>..." as appropriate to mark resolution)
 #
 #	    both modified:    README.md
 #
 no changes added to commit (use "git add" and/or "git commit -a")
競合を確認する
$ cat README.md
Hello, world!
foo
Git, a cool SCM
now thinking.....
extra line
<<<<<<< HEAD
bar
=======
BAZ
>>>>>>> RB-1


同じ位置(最終行)に違う変更を入れたため競合が
発生しました
競合を修正する
エディタでREADME.mdを以下のように修正
 Hello, world!
 foo
 Git, a cool SCM
 now thinking.....
 extra line
 bar and BAZ
競合の修正を確認
$ git diff
diff --cc README.md
index fb2ada9,275ac2a..0000000
--- a/README.md
+++ b/README.md
@@@ -3,4 -3,4 +3,8 @@@ fo
  Git, a cool SCM
  now thinking.....
  extra line
- bar
 -BAZ
++bar and BAZ
競合の修正をadd

$ git add README.md
競合の修正をcommit
 $ git commit

-m オプションを指定しないとエディタによるコメン
ト入力が求められますが、デフォルトはこんな感じ
 Merge branch 'RB-1'

 Conflicts:
        README.md
 #
 # It looks like you may be committing a MERGE.
 # If this is not correct, please remove the file
 #      .git/MERGE_HEAD
 # and try again.
 #

 # Please enter the commit message for your changes. Lines starting
 # with '#' will be ignored, and an empty message aborts the commit.
 # On branch master
 # Your branch is ahead of 'origin/master' by 1 commit.
 #
 # Changes to be committed:
 #
 #     modified: README.md
 #
Ruby開発サーバの紹介
Githubってなに?
Wikipediaから抜粋

GitHub(ギットハブ)はソフトウェア開発プロジェクトのための共有ウェ
ブサービスであり、Gitバージョン管理システムを使用する。

GitHub商用プランおよびオープンソースプロジェクト向けの無料アカウント
を提供している。 2009年のユーザー調査によると、GitHubは最もポピュ
ラーなGitホスティングサイトとなった[3]。

このサイトは社会的なネットワーク機能をもち、それはfeeds、followersと
して提供されており、ネットワークグラフとして開発者が彼ら自身のバー
ジョンのリポジトリを持つことを視覚的に把握可能にしている。(意訳)
メインの画面
コミットログ
ブランチの一覧
ブランチのネットワーク
作業した人のインパクト
何曜日の何時くらい?
cloneされた数
コラボレータ
メッセージのやりとり
Issue管理
Wikiもある
チームプレイの準備をする
複数のリポジトリ

ここまでは一人で一つのリポジトリを使ってきま
した

ここからはチームで一つのgithubのリポジトリを
使います

チームのメンバー数 + 1個のリポジトリを使います
リポジトリの構成
githubにリポジトリを作る

チームのリポジトリのオーナーとなる人を一人決
めます

オーナーがgithubにリポジトリを作成します。

他のメンバーについては、作ったリポジトリのコ
ラボレータとなるようにオーナーが設定する必要
があります。
githubにリポジトリを作る
githubにリポジトリを作る
project nameに”iketeru_git”を入力して”Create
repogitory”をクリック
githubにリポジトリができた
手順に従って操作する
Global step:
 開発環境全体で一回だけやる手順
Next Steps:
 まだローカルにリポジトリを作っていない場合の手順
Existing Git Repo?
 ローカルにリポジトリを作ってある場合の手順
Importing a Subversion Repo?
  Subversionのリポジトリからインポートする場合の手順
When you're done:
 手順が終わったらクリック
既存のリポジトリを使う
  もし他のディレクトリに移動していたら

  $ cd iketeru_git




  githubの指示通り

$ git remote add origin git@github.com:akm/iketeru_git.git
$ git push -u origin master
リロードすると
反映された!
コラボレータを追加する
コラボレータを追加する
コラボレータを追加する
コラボレータのユーザ名を入力して”Add”をクリッ
クしてください
追加された!
リポジトリからcloneする


コラボレータはオーナーが作ってくれたリポジト
リからcloneして、ローカルのリポジトリからアク
セスできるようになります。
コラボレータのローカルの
リポジトリは?
ひとまず無かったことにしてください。

git remote add origin .... によってoriginを追加する
ことは出来ますが、ローカルのリポジトリの各コ
ミットのSHAという識別子は、それぞれ別のもの
として振られているため、内容は同じでも全く別
ものとして扱われます。
既存のワークスペースの
名前を変えておきましょう

$ cd <プロジェクトの親ディレクトリ>
$ mv iketeru_git iketeru_git.original
cloneしよう
オーナーのリポジトリのページでURLをコピーし
ましょう
既存のリポジトリを使う

$ cd <プロジェクトの親ディレクトリ>
$ git clone <ペーストした文字列>




これでオーナーのiketeru_gitと連携するリポジトリ
を持ったワークスペースが、<プロジェクトの親
ディレクトリ>/iketeru_git というディレクトリに作
成されます
これでチームプレイの準備
が完了しました
はじめてのチームプレイ
変更をローカルでcommit

  何か変更


$ git commit -m ‘....’
コミットをpush




$ git push origin master
他の人はpull

$ git pull origin master




  変更が反映されてる!
同時に編集した場合
Aさんが変更をローカルで
  commit
$ git pull origin master



  何か変更

$ git commit -m ‘....’
Bさんが変更をローカルで
  commit
$ git pull origin master



  Aさんと同じ箇所に別の変更

$ git commit -m ‘....’
Aさんがコミットをpush




$ git push origin master
Bさんがコミットをpush




$ git push origin master




  メッセージが出るのでそれに従ってやってみま
  しょう
リモートのブランチの操作
ローカルのブランチをorigin
  にpush


$ git push origin RB-1
originのブランチを全部取得


$ git fetch origin




$ git branch -r



  で確認してください
素敵な資料がたくさん公開され
ています
チュートリアル・入門
git チュートリアル

  http://www8.atwiki.jp/git_jp/pub/git-manual-jp/Documentation/
  gittutorial.html


約20個のコマンドによる日々のGIT活用

  http://www8.atwiki.jp/git_jp/pub/git-manual-jp/Documentation/
  everyday.html


Pro Git
  http://progit.org/book/ja/
簡単まとめ


git - 簡単ガイド

 http://rogerdudler.github.com/git-guide/index.ja.html


Gitを使いこなすための20のコマンド

 http://sourceforge.jp/magazine/09/03/16/0831212
脱初心者


あなたの知らないGit Tips
 http://keijinsonyaban.blogspot.com/2010/11/git-tips.html

【翻訳】Gitをボトムアップから理解する
 http://keijinsonyaban.blogspot.com/2011/05/git.html
A successful Git branching
 model

A successful Git branching model を翻訳しました
  http://keijinsonyaban.blogspot.com/2010/10/successful-git-branching-
 model.html

A successful Git branching model を補助する git-
flow を使ってみた
  http://d.hatena.ne.jp/Voluntas/20101223/1293111549
ディスカッション
実際プロジェクトでどう使う?
テーマの候補
 バージョン管理の導入

     Gitの導入

  Subversionとの共存

自動テストとバージョン管理

 リリースとバージョン管理

      その他

Weitere ähnliche Inhalte

Was ist angesagt?

2018 07-18 git-hub講座
2018 07-18 git-hub講座2018 07-18 git-hub講座
2018 07-18 git-hub講座貴一 末田
 
Cloudy会 @cloudymeeting ハイブリッドクラウドとheroku/EC2決算法
Cloudy会 @cloudymeeting ハイブリッドクラウドとheroku/EC2決算法Cloudy会 @cloudymeeting ハイブリッドクラウドとheroku/EC2決算法
Cloudy会 @cloudymeeting ハイブリッドクラウドとheroku/EC2決算法Tokyo University of Science
 
GitLab Meetup Tokyo #1 LT:「わりと大きい会社でGitLabをホスティングしてみた話」
GitLab Meetup Tokyo #1 LT:「わりと大きい会社でGitLabをホスティングしてみた話」GitLab Meetup Tokyo #1 LT:「わりと大きい会社でGitLabをホスティングしてみた話」
GitLab Meetup Tokyo #1 LT:「わりと大きい会社でGitLabをホスティングしてみた話」Taisuke Inoue
 
GitLabを16万8千光年ワープさせた話(改)
GitLabを16万8千光年ワープさせた話(改)GitLabを16万8千光年ワープさせた話(改)
GitLabを16万8千光年ワープさせた話(改)Wataru NOGUCHI
 
Android App Development with Gradle & Android Studio
Android App Development with Gradle & Android StudioAndroid App Development with Gradle & Android Studio
Android App Development with Gradle & Android StudioSoichiro Kashima
 
Recap: Modern CI/CD with Tekton and Prow Automated via Jenkins X - Kubernetes...
Recap: Modern CI/CD with Tekton and Prow Automated via Jenkins X - Kubernetes...Recap: Modern CI/CD with Tekton and Prow Automated via Jenkins X - Kubernetes...
Recap: Modern CI/CD with Tekton and Prow Automated via Jenkins X - Kubernetes...JUNICHI YOSHISE
 
プロダクトがリリースされるまでを『見える化』することで組織体質を変えていった話
プロダクトがリリースされるまでを『見える化』することで組織体質を変えていった話プロダクトがリリースされるまでを『見える化』することで組織体質を変えていった話
プロダクトがリリースされるまでを『見える化』することで組織体質を変えていった話i35_267 Ishigaki
 
色んな環境用の たった一つの.gitConfig
色んな環境用の たった一つの.gitConfig色んな環境用の たった一つの.gitConfig
色んな環境用の たった一つの.gitConfigwataru uchiyama
 
チームを『組成→安定→高速→最適化』に導くKAIZEN メソッド郡
チームを『組成→安定→高速→最適化』に導くKAIZEN メソッド郡チームを『組成→安定→高速→最適化』に導くKAIZEN メソッド郡
チームを『組成→安定→高速→最適化』に導くKAIZEN メソッド郡i35_267 Ishigaki
 
North Starアプリ作り,海外コミュニティ,Tips
North Starアプリ作り,海外コミュニティ,TipsNorth Starアプリ作り,海外コミュニティ,Tips
North Starアプリ作り,海外コミュニティ,TipsTasuku Takahashi
 
Gitのよく使うコマンド
Gitのよく使うコマンドGitのよく使うコマンド
Gitのよく使うコマンドYUKI Kaoru
 
VSM (Value Stream Mapping)を用いた開発プロセス可視化のお話
VSM (Value Stream Mapping)を用いた開発プロセス可視化のお話VSM (Value Stream Mapping)を用いた開発プロセス可視化のお話
VSM (Value Stream Mapping)を用いた開発プロセス可視化のお話i35_267 Ishigaki
 
新人Git/Github研修公開用スライド(その1)
新人Git/Github研修公開用スライド(その1)新人Git/Github研修公開用スライド(その1)
新人Git/Github研修公開用スライド(その1)pupupopo88
 
実践 Git - 低レベルに知る Git
実践 Git - 低レベルに知る Git実践 Git - 低レベルに知る Git
実践 Git - 低レベルに知る GitYouhei Nitta
 

Was ist angesagt? (20)

Git 勉強会
Git 勉強会Git 勉強会
Git 勉強会
 
2018 07-18 git-hub講座
2018 07-18 git-hub講座2018 07-18 git-hub講座
2018 07-18 git-hub講座
 
git ~start PullRequest~
git ~start PullRequest~git ~start PullRequest~
git ~start PullRequest~
 
Cloudy会 @cloudymeeting ハイブリッドクラウドとheroku/EC2決算法
Cloudy会 @cloudymeeting ハイブリッドクラウドとheroku/EC2決算法Cloudy会 @cloudymeeting ハイブリッドクラウドとheroku/EC2決算法
Cloudy会 @cloudymeeting ハイブリッドクラウドとheroku/EC2決算法
 
GitLab Meetup Tokyo #1 LT:「わりと大きい会社でGitLabをホスティングしてみた話」
GitLab Meetup Tokyo #1 LT:「わりと大きい会社でGitLabをホスティングしてみた話」GitLab Meetup Tokyo #1 LT:「わりと大きい会社でGitLabをホスティングしてみた話」
GitLab Meetup Tokyo #1 LT:「わりと大きい会社でGitLabをホスティングしてみた話」
 
GitLabを16万8千光年ワープさせた話(改)
GitLabを16万8千光年ワープさせた話(改)GitLabを16万8千光年ワープさせた話(改)
GitLabを16万8千光年ワープさせた話(改)
 
今さら聞けない人のためのGit超入門 2019/11/21
今さら聞けない人のためのGit超入門 2019/11/21今さら聞けない人のためのGit超入門 2019/11/21
今さら聞けない人のためのGit超入門 2019/11/21
 
Android App Development with Gradle & Android Studio
Android App Development with Gradle & Android StudioAndroid App Development with Gradle & Android Studio
Android App Development with Gradle & Android Studio
 
Recap: Modern CI/CD with Tekton and Prow Automated via Jenkins X - Kubernetes...
Recap: Modern CI/CD with Tekton and Prow Automated via Jenkins X - Kubernetes...Recap: Modern CI/CD with Tekton and Prow Automated via Jenkins X - Kubernetes...
Recap: Modern CI/CD with Tekton and Prow Automated via Jenkins X - Kubernetes...
 
gRPC入門
gRPC入門gRPC入門
gRPC入門
 
プロダクトがリリースされるまでを『見える化』することで組織体質を変えていった話
プロダクトがリリースされるまでを『見える化』することで組織体質を変えていった話プロダクトがリリースされるまでを『見える化』することで組織体質を変えていった話
プロダクトがリリースされるまでを『見える化』することで組織体質を変えていった話
 
色んな環境用の たった一つの.gitConfig
色んな環境用の たった一つの.gitConfig色んな環境用の たった一つの.gitConfig
色んな環境用の たった一つの.gitConfig
 
チームを『組成→安定→高速→最適化』に導くKAIZEN メソッド郡
チームを『組成→安定→高速→最適化』に導くKAIZEN メソッド郡チームを『組成→安定→高速→最適化』に導くKAIZEN メソッド郡
チームを『組成→安定→高速→最適化』に導くKAIZEN メソッド郡
 
North Starアプリ作り,海外コミュニティ,Tips
North Starアプリ作り,海外コミュニティ,TipsNorth Starアプリ作り,海外コミュニティ,Tips
North Starアプリ作り,海外コミュニティ,Tips
 
Gitのよく使うコマンド
Gitのよく使うコマンドGitのよく使うコマンド
Gitのよく使うコマンド
 
VSM (Value Stream Mapping)を用いた開発プロセス可視化のお話
VSM (Value Stream Mapping)を用いた開発プロセス可視化のお話VSM (Value Stream Mapping)を用いた開発プロセス可視化のお話
VSM (Value Stream Mapping)を用いた開発プロセス可視化のお話
 
新人Git/Github研修公開用スライド(その1)
新人Git/Github研修公開用スライド(その1)新人Git/Github研修公開用スライド(その1)
新人Git/Github研修公開用スライド(その1)
 
実践 Git - 低レベルに知る Git
実践 Git - 低レベルに知る Git実践 Git - 低レベルに知る Git
実践 Git - 低レベルに知る Git
 
こわくないプルリク
こわくないプルリクこわくないプルリク
こわくないプルリク
 
はじめてのgithub
はじめてのgithubはじめてのgithub
はじめてのgithub
 

Ähnlich wie 20120324 git training

Gitを使ってみませんか
Gitを使ってみませんかGitを使ってみませんか
Gitを使ってみませんかAtsuhiro Takiguchi
 
バージョン管理
バージョン管理バージョン管理
バージョン管理Misa Kondo
 
GitHub勉強会
GitHub勉強会GitHub勉強会
GitHub勉強会ArusuDev
 
Git勉強会 2016 Gitで卒論を管理しよう回
Git勉強会 2016 Gitで卒論を管理しよう回Git勉強会 2016 Gitで卒論を管理しよう回
Git勉強会 2016 Gitで卒論を管理しよう回kinme modoki
 
今さら聞けない人のためのGit超入門 GitLab 13対応版
今さら聞けない人のためのGit超入門 GitLab 13対応版今さら聞けない人のためのGit超入門 GitLab 13対応版
今さら聞けない人のためのGit超入門 GitLab 13対応版VirtualTech Japan Inc./Begi.net Inc.
 
gitを使う準備をしよう - 初級編
gitを使う準備をしよう - 初級編gitを使う準備をしよう - 初級編
gitを使う準備をしよう - 初級編Sanae Yamashita
 
Python for Data Analysis第1回勉強会(+git入門)
Python for Data Analysis第1回勉強会(+git入門)Python for Data Analysis第1回勉強会(+git入門)
Python for Data Analysis第1回勉強会(+git入門)Makoto Kawano
 
Git講習会
Git講習会Git講習会
Git講習会galluda
 
Gitとちょっと仲良くなるために覚えたことまとめ
Gitとちょっと仲良くなるために覚えたことまとめGitとちょっと仲良くなるために覚えたことまとめ
Gitとちょっと仲良くなるために覚えたことまとめNatsumi Kashiwa
 
15分でわかるGit入門
15分でわかるGit入門15分でわかるGit入門
15分でわかるGit入門to_ueda
 
今さら聞けない人のためのGit超入門 GitLab 14対応版
今さら聞けない人のためのGit超入門 GitLab 14対応版今さら聞けない人のためのGit超入門 GitLab 14対応版
今さら聞けない人のためのGit超入門 GitLab 14対応版VirtualTech Japan Inc./Begi.net Inc.
 
GitLab + Dokku で作る CI/CD 環境
GitLab + Dokku で作る CI/CD 環境GitLab + Dokku で作る CI/CD 環境
GitLab + Dokku で作る CI/CD 環境Kazuhiro Nishiyama
 

Ähnlich wie 20120324 git training (20)

Gitの紹介
Gitの紹介Gitの紹介
Gitの紹介
 
今さら聞けない人のためのGitLabの始め方 Ubuntu編
今さら聞けない人のためのGitLabの始め方 Ubuntu編今さら聞けない人のためのGitLabの始め方 Ubuntu編
今さら聞けない人のためのGitLabの始め方 Ubuntu編
 
Gitを使ってみませんか
Gitを使ってみませんかGitを使ってみませんか
Gitを使ってみませんか
 
バージョン管理
バージョン管理バージョン管理
バージョン管理
 
GitHub勉強会
GitHub勉強会GitHub勉強会
GitHub勉強会
 
Git勉強会 2016 Gitで卒論を管理しよう回
Git勉強会 2016 Gitで卒論を管理しよう回Git勉強会 2016 Gitで卒論を管理しよう回
Git勉強会 2016 Gitで卒論を管理しよう回
 
今さら聞けない人のためのGit超入門 GitLab 13対応版
今さら聞けない人のためのGit超入門 GitLab 13対応版今さら聞けない人のためのGit超入門 GitLab 13対応版
今さら聞けない人のためのGit超入門 GitLab 13対応版
 
gitを使う準備をしよう - 初級編
gitを使う準備をしよう - 初級編gitを使う準備をしよう - 初級編
gitを使う準備をしよう - 初級編
 
Git地図
Git地図Git地図
Git地図
 
今さら聞けない人のためのgit超入門
今さら聞けない人のためのgit超入門今さら聞けない人のためのgit超入門
今さら聞けない人のためのgit超入門
 
Gitの使い方あれこれ
Gitの使い方あれこれGitの使い方あれこれ
Gitの使い方あれこれ
 
Python for Data Analysis第1回勉強会(+git入門)
Python for Data Analysis第1回勉強会(+git入門)Python for Data Analysis第1回勉強会(+git入門)
Python for Data Analysis第1回勉強会(+git入門)
 
Git講習会
Git講習会Git講習会
Git講習会
 
Gitとちょっと仲良くなるために覚えたことまとめ
Gitとちょっと仲良くなるために覚えたことまとめGitとちょっと仲良くなるために覚えたことまとめ
Gitとちょっと仲良くなるために覚えたことまとめ
 
Git (実践入門編)
Git (実践入門編)Git (実践入門編)
Git (実践入門編)
 
15分でわかるGit入門
15分でわかるGit入門15分でわかるGit入門
15分でわかるGit入門
 
今さら聞けない人のためのGit超入門
今さら聞けない人のためのGit超入門今さら聞けない人のためのGit超入門
今さら聞けない人のためのGit超入門
 
今さら聞けない人のためのGit超入門 GitLab 14対応版
今さら聞けない人のためのGit超入門 GitLab 14対応版今さら聞けない人のためのGit超入門 GitLab 14対応版
今さら聞けない人のためのGit超入門 GitLab 14対応版
 
GitLab + Dokku で作る CI/CD 環境
GitLab + Dokku で作る CI/CD 環境GitLab + Dokku で作る CI/CD 環境
GitLab + Dokku で作る CI/CD 環境
 
今さら聞けない人のためのgit超入門
今さら聞けない人のためのgit超入門今さら聞けない人のためのgit超入門
今さら聞けない人のためのgit超入門
 

Mehr von Takeshi AKIMA

LT at JavaOne2012 JVM language BoF #jt12_b101
LT at JavaOne2012  JVM language BoF #jt12_b101LT at JavaOne2012  JVM language BoF #jt12_b101
LT at JavaOne2012 JVM language BoF #jt12_b101Takeshi AKIMA
 
DSL by JRuby at JavaOne2012 JVM language BoF #jt12_b101
DSL by JRuby at JavaOne2012  JVM language BoF #jt12_b101DSL by JRuby at JavaOne2012  JVM language BoF #jt12_b101
DSL by JRuby at JavaOne2012 JVM language BoF #jt12_b101Takeshi AKIMA
 
20120121 rbc rails_routing
20120121 rbc rails_routing20120121 rbc rails_routing
20120121 rbc rails_routingTakeshi AKIMA
 
jrubykaigi2010-lt-rubeus
jrubykaigi2010-lt-rubeusjrubykaigi2010-lt-rubeus
jrubykaigi2010-lt-rubeusTakeshi AKIMA
 
Oktopartial Introduction
Oktopartial IntroductionOktopartial Introduction
Oktopartial IntroductionTakeshi AKIMA
 
仕事で使ってるプラグイン
仕事で使ってるプラグイン仕事で使ってるプラグイン
仕事で使ってるプラグインTakeshi AKIMA
 

Mehr von Takeshi AKIMA (8)

20120831 mongoid
20120831 mongoid20120831 mongoid
20120831 mongoid
 
LT at JavaOne2012 JVM language BoF #jt12_b101
LT at JavaOne2012  JVM language BoF #jt12_b101LT at JavaOne2012  JVM language BoF #jt12_b101
LT at JavaOne2012 JVM language BoF #jt12_b101
 
DSL by JRuby at JavaOne2012 JVM language BoF #jt12_b101
DSL by JRuby at JavaOne2012  JVM language BoF #jt12_b101DSL by JRuby at JavaOne2012  JVM language BoF #jt12_b101
DSL by JRuby at JavaOne2012 JVM language BoF #jt12_b101
 
20120121 rbc rails_routing
20120121 rbc rails_routing20120121 rbc rails_routing
20120121 rbc rails_routing
 
Llonsen object ruby
Llonsen object rubyLlonsen object ruby
Llonsen object ruby
 
jrubykaigi2010-lt-rubeus
jrubykaigi2010-lt-rubeusjrubykaigi2010-lt-rubeus
jrubykaigi2010-lt-rubeus
 
Oktopartial Introduction
Oktopartial IntroductionOktopartial Introduction
Oktopartial Introduction
 
仕事で使ってるプラグイン
仕事で使ってるプラグイン仕事で使ってるプラグイン
仕事で使ってるプラグイン
 

20120324 git training

Hinweis der Redaktion

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. \n
  25. \n
  26. \n
  27. \n
  28. \n
  29. \n
  30. \n
  31. \n
  32. \n
  33. \n
  34. \n
  35. \n
  36. \n
  37. \n
  38. \n
  39. \n
  40. \n
  41. \n
  42. \n
  43. \n
  44. \n
  45. \n
  46. \n
  47. \n
  48. \n
  49. \n
  50. \n
  51. \n
  52. \n
  53. \n
  54. \n
  55. \n
  56. \n
  57. \n
  58. \n
  59. \n
  60. \n
  61. \n
  62. \n
  63. \n
  64. \n
  65. \n
  66. \n
  67. \n
  68. \n
  69. \n
  70. \n
  71. \n
  72. \n
  73. \n
  74. \n
  75. \n
  76. \n
  77. \n
  78. \n
  79. \n
  80. \n
  81. \n
  82. \n
  83. \n
  84. \n
  85. \n
  86. \n
  87. \n
  88. \n
  89. \n
  90. \n
  91. \n
  92. \n
  93. \n
  94. \n
  95. \n
  96. \n
  97. \n
  98. \n
  99. \n
  100. \n
  101. \n
  102. \n
  103. \n
  104. \n
  105. \n
  106. \n
  107. \n
  108. \n