SlideShare a Scribd company logo
8つのコマンドで始めるGit
Gitの概要とEclipseでの使い方
Overview
• 対象:Git未経験の方
• 内容:Gitの概要と基本的な8つのコマンドの
説明
• 目標:上記2点を理解して、eclipseを使った開
発を始められるようになること
Gitとは
• 特徴1. 分散型
• 特徴2. ブランチ
• 特徴3. 高速
プログラムのソースコードなどの変更履歴を記録・追跡するための分散型バー
ジョン管理システムである。
Linuxカーネルのソースコード管理に用いるためにリーナス・トーバルズによって
開発され、それ以降ほかの多くのプロジェクトで採用されている。
Linuxカーネルのような巨大プロジェクトにも対応できるように、動作速度に重点
が置かれている。
From Wikipedia
Gitの特徴1 分散型
リモートサーバに配備されたリポジトリ
(リモートリポジトリ)の完全なコピーを
ローカルに複製(ローカルリポジトリ)して
作業を行う。
• ネットワークがない環境でもほとんどの作業を行うことができる
• ローカルリポジトリを破損しても、リモートリポジトリから再度複製が取得できる
From git-scm.com(https://git-scm.com/)
Gitの特徴2 ブランチ
• 開発の本流から分岐して、本流の開発を邪
魔することなく作業を続けることができる。
• 分岐したブランチを、開発の本流に合流させ
ることもできる。
Gitの特徴3 高速
MercurialやSubversionに
比べて、addやcommitと
いったローカルリポジトリ
に対する処理はもちろん、
pushやpullといったリモー
トリポジトリに対する処理
も高速で動作する。
From Vasilis Lourdas(https://www.lourdas.eu/)
8つのコマンド
次に、基本的な8つのコマンドを3つのグルー
プに分けて解説します。
1. 他のリポジトリに関連したコマンド
2. ブランチに関連したコマンド
3. ローカルリポジトリに関連したコマンド
他のリポジトリに関連したコマンド
1. clone
リモートリポジトリをローカルに複製する。
2. pull
ローカルリポジトリにリモートリポジトリの変更を反映する
3. push
ローカルリポジトリの変更をリモートリポジトリに反映する
1. clone
2. pull
3. push
ブランチに関連したコマンド
1. branch
新しいブランチを作成する。
2. checkout
ブランチを切り替える。
3. merge
他のブランチの変更を取り込む。
1. branch
2. checkout
3. merge
Repository
File A
File B
File C
Index
File A
File B
File C
work tree
File A
File B
File C
ローカルリポジトリに関連したコマンド
1. add
ファイルをバージョン管理の対象にする
2. commit
変更を確定してスナップショットを取る
1. add
2. commit
Eclipseでの作業
最後にGitを用いたEclipseでの開発の運用フ
ローを説明します。
1. clone
プロジェクトのインポート
Git形式のプロジェクトをインポートすると、リモートリポジトリが
ローカルリポジトリとして複製されます
2. checkout
作業の起点となるトピックブランチに切り替えま
す。
2. checkout
3. branch
作業起点のブランチから、作業対象となるブラ
ンチを作成します。
1. branch
4. add
新規にファイルを作成した場合は、ファイルを
バージョン管理に追加する必要があります。
Index
File A
File B
File C
work tree
File A
File B
File C
5. commit
作業が完了したら変更を確定して、スナップ
ショットを作成します。
Reposit
ory
File A
File B
File C
Inde
x
File A
File B
File C
commit
6.Pull
編集内容の競合を防ぐために、リモートリポジト
リの変更を取り込んで、本流を最新の状態にし
ます。
pull
7. merge
本流を自分のトピックブランチにマージして、競
合を解消します。
3. merge
8. push
自身のトピックブランチをリモートリポジトリに送
信します。
3. push

More Related Content

What's hot

Git -分散バージョン管理システム-
Git -分散バージョン管理システム-Git -分散バージョン管理システム-
Git -分散バージョン管理システム-
Koji Shinba
 
猫にはわからないGit講座
猫にはわからないGit講座猫にはわからないGit講座
猫にはわからないGit講座
Yusei Yamanaka
 

What's hot (20)

git ~start PullRequest~
git ~start PullRequest~git ~start PullRequest~
git ~start PullRequest~
 
Git lev 1-おひとりさま用-
Git lev 1-おひとりさま用-Git lev 1-おひとりさま用-
Git lev 1-おひとりさま用-
 
Gitの勉強 紹介編-
Gitの勉強 紹介編-Gitの勉強 紹介編-
Gitの勉強 紹介編-
 
日本androidの会 中国支部 29回勉強会 github
日本androidの会 中国支部 29回勉強会 github日本androidの会 中国支部 29回勉強会 github
日本androidの会 中国支部 29回勉強会 github
 
Git -分散バージョン管理システム-
Git -分散バージョン管理システム-Git -分散バージョン管理システム-
Git -分散バージョン管理システム-
 
GitLabを16万8千光年ワープさせた話(改)
GitLabを16万8千光年ワープさせた話(改)GitLabを16万8千光年ワープさせた話(改)
GitLabを16万8千光年ワープさせた話(改)
 
Ruby svn to git
Ruby svn to gitRuby svn to git
Ruby svn to git
 
Git 初心者講座 by forkwell
Git 初心者講座 by forkwellGit 初心者講座 by forkwell
Git 初心者講座 by forkwell
 
超初心者のためのGitマニュアル
超初心者のためのGitマニュアル超初心者のためのGitマニュアル
超初心者のためのGitマニュアル
 
Githubサービスについて
GithubサービスについてGithubサービスについて
Githubサービスについて
 
git-svn
git-svngit-svn
git-svn
 
20150801 QGIS初心者講習会資料
20150801 QGIS初心者講習会資料20150801 QGIS初心者講習会資料
20150801 QGIS初心者講習会資料
 
Shizudev git hub宿題
Shizudev git hub宿題Shizudev git hub宿題
Shizudev git hub宿題
 
Gitの基本コマンド
Gitの基本コマンドGitの基本コマンド
Gitの基本コマンド
 
Git社内勉強会資料
Git社内勉強会資料Git社内勉強会資料
Git社内勉強会資料
 
Bitbucket and git
Bitbucket and gitBitbucket and git
Bitbucket and git
 
Stylez GitLab勉強会 第1回
Stylez GitLab勉強会 第1回Stylez GitLab勉強会 第1回
Stylez GitLab勉強会 第1回
 
Gitのススメ
GitのススメGitのススメ
Gitのススメ
 
猫にはわからないGit講座
猫にはわからないGit講座猫にはわからないGit講座
猫にはわからないGit講座
 
GitHub Releasesからインストールしたコマンドを管理する
GitHub Releasesからインストールしたコマンドを管理するGitHub Releasesからインストールしたコマンドを管理する
GitHub Releasesからインストールしたコマンドを管理する
 

Similar to 8つの操作ではじめるGit

Git extensions ws外部公開用
Git extensions ws外部公開用Git extensions ws外部公開用
Git extensions ws外部公開用
CROOZ, inc.
 

Similar to 8つの操作ではじめるGit (20)

ディレクターやデザイナーのためのリテラシー向上講座 git入門編
ディレクターやデザイナーのためのリテラシー向上講座 git入門編ディレクターやデザイナーのためのリテラシー向上講座 git入門編
ディレクターやデザイナーのためのリテラシー向上講座 git入門編
 
Git&GitHub入門
Git&GitHub入門Git&GitHub入門
Git&GitHub入門
 
Kuberneteの運用を支えるGitOps
Kuberneteの運用を支えるGitOpsKuberneteの運用を支えるGitOps
Kuberneteの運用を支えるGitOps
 
Gitに触れよう
Gitに触れようGitに触れよう
Gitに触れよう
 
Gitのいろは
GitのいろはGitのいろは
Gitのいろは
 
Git flowについてまとめてみた
Git flowについてまとめてみたGit flowについてまとめてみた
Git flowについてまとめてみた
 
Git勉強会 #01
Git勉強会 #01Git勉強会 #01
Git勉強会 #01
 
Git/GitHub
Git/GitHubGit/GitHub
Git/GitHub
 
Git & ブランチモデルで学ぶ バージョン管理入門
Git & ブランチモデルで学ぶ バージョン管理入門Git & ブランチモデルで学ぶ バージョン管理入門
Git & ブランチモデルで学ぶ バージョン管理入門
 
Git勉強会資料
Git勉強会資料Git勉強会資料
Git勉強会資料
 
VCS - Version Control System at Security and Programming camp 2011
VCS - Version Control System at Security and Programming camp 2011 VCS - Version Control System at Security and Programming camp 2011
VCS - Version Control System at Security and Programming camp 2011
 
Git extensions ws外部公開用
Git extensions ws外部公開用Git extensions ws外部公開用
Git extensions ws外部公開用
 
GMO プライベート DMP 開発で 取り組んできた DevOps と今後の展望
GMO プライベート DMP 開発で 取り組んできた DevOps と今後の展望GMO プライベート DMP 開発で 取り組んできた DevOps と今後の展望
GMO プライベート DMP 開発で 取り組んできた DevOps と今後の展望
 
Github勉強会~Git・Githubを用いて共同開発・バージョン管理をしよう~
Github勉強会~Git・Githubを用いて共同開発・バージョン管理をしよう~Github勉強会~Git・Githubを用いて共同開発・バージョン管理をしよう~
Github勉強会~Git・Githubを用いて共同開発・バージョン管理をしよう~
 
ゆるふわっGit入門
ゆるふわっGit入門ゆるふわっGit入門
ゆるふわっGit入門
 
serverless openstack 101
serverless openstack 101serverless openstack 101
serverless openstack 101
 
Rancher2.0で実現する Managed Kubernetes Service
Rancher2.0で実現する Managed Kubernetes ServiceRancher2.0で実現する Managed Kubernetes Service
Rancher2.0で実現する Managed Kubernetes Service
 
LT資料-第3回_5分でわかるGitの世界
LT資料-第3回_5分でわかるGitの世界LT資料-第3回_5分でわかるGitの世界
LT資料-第3回_5分でわかるGitの世界
 
バージョン管理Git
バージョン管理Gitバージョン管理Git
バージョン管理Git
 
一人でもはじめるGitでバージョン管理
一人でもはじめるGitでバージョン管理一人でもはじめるGitでバージョン管理
一人でもはじめるGitでバージョン管理
 

Recently uploaded

ビジュアルプログラミングIotLT17-オープンソース化されたビジュアルプログラミング環境Noodlの紹介
ビジュアルプログラミングIotLT17-オープンソース化されたビジュアルプログラミング環境Noodlの紹介ビジュアルプログラミングIotLT17-オープンソース化されたビジュアルプログラミング環境Noodlの紹介
ビジュアルプログラミングIotLT17-オープンソース化されたビジュアルプログラミング環境Noodlの紹介
miyp
 

Recently uploaded (8)

ビジュアルプログラミングIotLT17-オープンソース化されたビジュアルプログラミング環境Noodlの紹介
ビジュアルプログラミングIotLT17-オープンソース化されたビジュアルプログラミング環境Noodlの紹介ビジュアルプログラミングIotLT17-オープンソース化されたビジュアルプログラミング環境Noodlの紹介
ビジュアルプログラミングIotLT17-オープンソース化されたビジュアルプログラミング環境Noodlの紹介
 
【登壇資料】スタートアップCTO経験からキャリアについて再考する CTO・VPoEに聞く by DIGGLE CTO 水上
【登壇資料】スタートアップCTO経験からキャリアについて再考する  CTO・VPoEに聞く by DIGGLE CTO 水上【登壇資料】スタートアップCTO経験からキャリアについて再考する  CTO・VPoEに聞く by DIGGLE CTO 水上
【登壇資料】スタートアップCTO経験からキャリアについて再考する CTO・VPoEに聞く by DIGGLE CTO 水上
 
エンジニアのセルフブランディングと技術情報発信の重要性 テクニカルライターになろう 講演資料
エンジニアのセルフブランディングと技術情報発信の重要性 テクニカルライターになろう 講演資料エンジニアのセルフブランディングと技術情報発信の重要性 テクニカルライターになろう 講演資料
エンジニアのセルフブランディングと技術情報発信の重要性 テクニカルライターになろう 講演資料
 
Compute Units/Budget最適化 - Solana Developer Hub Online 6 #SolDevHub
Compute Units/Budget最適化 - Solana Developer Hub Online 6 #SolDevHubCompute Units/Budget最適化 - Solana Developer Hub Online 6 #SolDevHub
Compute Units/Budget最適化 - Solana Developer Hub Online 6 #SolDevHub
 
Linuxサーバー構築 学習のポイントと環境構築 OSC2024名古屋 セミナー資料
Linuxサーバー構築 学習のポイントと環境構築 OSC2024名古屋 セミナー資料Linuxサーバー構築 学習のポイントと環境構築 OSC2024名古屋 セミナー資料
Linuxサーバー構築 学習のポイントと環境構築 OSC2024名古屋 セミナー資料
 
今さら聞けない人のためのDevOps超入門 OSC2024名古屋 セミナー資料
今さら聞けない人のためのDevOps超入門 OSC2024名古屋  セミナー資料今さら聞けない人のためのDevOps超入門 OSC2024名古屋  セミナー資料
今さら聞けない人のためのDevOps超入門 OSC2024名古屋 セミナー資料
 
人的資本経営のための地理情報インテリジェンス 作業パターン分析と心身状態把握に関する実証事例
人的資本経営のための地理情報インテリジェンス 作業パターン分析と心身状態把握に関する実証事例人的資本経営のための地理情報インテリジェンス 作業パターン分析と心身状態把握に関する実証事例
人的資本経営のための地理情報インテリジェンス 作業パターン分析と心身状態把握に関する実証事例
 
本の感想共有会「データモデリングでドメインを駆動する」本が突きつける我々の課題について
本の感想共有会「データモデリングでドメインを駆動する」本が突きつける我々の課題について本の感想共有会「データモデリングでドメインを駆動する」本が突きつける我々の課題について
本の感想共有会「データモデリングでドメインを駆動する」本が突きつける我々の課題について
 

8つの操作ではじめるGit