Enviar pesquisa
Carregar
Git天空闘技場_ハンズオン
•
5 gostaram
•
5,542 visualizações
sinsoku listy
Seguir
Tecnologia
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 27
Baixar agora
Baixar para ler offline
Recomendados
DVCSとGitの基礎
DVCSとGitの基礎
sinsoku listy
バージョン管理とGit
バージョン管理とGit
sinsoku listy
Git overview (v 0.96)
Git overview (v 0.96)
Tatsuki Sugiura
Dive into .git 日本語版
Dive into .git 日本語版
nishio
Git (実践入門編)
Git (実践入門編)
Naomichi Yamakita
今さら聞けない人のためのGit超入門
今さら聞けない人のためのGit超入門
VirtualTech Japan Inc./Begi.net Inc.
今さら聞けない人のためのgit超入門
今さら聞けない人のためのgit超入門
VirtualTech Japan Inc./Begi.net Inc.
Gitpractice2
Gitpractice2
mmm110
Recomendados
DVCSとGitの基礎
DVCSとGitの基礎
sinsoku listy
バージョン管理とGit
バージョン管理とGit
sinsoku listy
Git overview (v 0.96)
Git overview (v 0.96)
Tatsuki Sugiura
Dive into .git 日本語版
Dive into .git 日本語版
nishio
Git (実践入門編)
Git (実践入門編)
Naomichi Yamakita
今さら聞けない人のためのGit超入門
今さら聞けない人のためのGit超入門
VirtualTech Japan Inc./Begi.net Inc.
今さら聞けない人のためのgit超入門
今さら聞けない人のためのgit超入門
VirtualTech Japan Inc./Begi.net Inc.
Gitpractice2
Gitpractice2
mmm110
Git for beginners
Git for beginners
Shohei kamon
git 初めの一歩
git 初めの一歩
Shin Yoshida
今さら聞けない人のためのGit超入門 GitLab 14対応版
今さら聞けない人のためのGit超入門 GitLab 14対応版
VirtualTech Japan Inc./Begi.net Inc.
gitを使う準備をしよう - 初級編
gitを使う準備をしよう - 初級編
Sanae Yamashita
Gitを使ってみよう
Gitを使ってみよう
Tamotsu Furuya
今さら聞けない人のためのGit超入門 OSC2018広島版
今さら聞けない人のためのGit超入門 OSC2018広島版
VirtualTech Japan Inc./Begi.net Inc.
Git
Git
YushiroDodo
コード読経会報告書
コード読経会報告書
Masahiko Toyoshi
今さら聞けない人のためのGit超入門 2019/11/21
今さら聞けない人のためのGit超入門 2019/11/21
VirtualTech Japan Inc./Begi.net Inc.
Git 道場 心:Git総論、心構え
Git 道場 心:Git総論、心構え
Nobuhiro Iwamatsu
Git 実践入門
Git 実践入門
Yasutaka Kanzaki
今さら聞けない人のためのgit超入門
今さら聞けない人のためのgit超入門
VirtualTech Japan Inc./Begi.net Inc.
Git
Git
Appresso Engineering Team
Rails6にいつ上げるか?
Rails6にいつ上げるか?
sinsoku listy
Rails Testing on Fargate
Rails Testing on Fargate
sinsoku listy
Search Form for Rails
Search Form for Rails
sinsoku listy
ENGINEER WORK!!
ENGINEER WORK!!
sinsoku listy
自己修復的なインフラ -Self-Healing Infrastructure-
自己修復的なインフラ -Self-Healing Infrastructure-
sinsoku listy
毎日gemをアップグレードする生活
毎日gemをアップグレードする生活
sinsoku listy
Rails 5.2: credentials
Rails 5.2: credentials
sinsoku listy
Randomly Failing Specs
Randomly Failing Specs
sinsoku listy
技術的負債とリファクタリング
技術的負債とリファクタリング
sinsoku listy
Mais conteúdo relacionado
Semelhante a Git天空闘技場_ハンズオン
Git for beginners
Git for beginners
Shohei kamon
git 初めの一歩
git 初めの一歩
Shin Yoshida
今さら聞けない人のためのGit超入門 GitLab 14対応版
今さら聞けない人のためのGit超入門 GitLab 14対応版
VirtualTech Japan Inc./Begi.net Inc.
gitを使う準備をしよう - 初級編
gitを使う準備をしよう - 初級編
Sanae Yamashita
Gitを使ってみよう
Gitを使ってみよう
Tamotsu Furuya
今さら聞けない人のためのGit超入門 OSC2018広島版
今さら聞けない人のためのGit超入門 OSC2018広島版
VirtualTech Japan Inc./Begi.net Inc.
Git
Git
YushiroDodo
コード読経会報告書
コード読経会報告書
Masahiko Toyoshi
今さら聞けない人のためのGit超入門 2019/11/21
今さら聞けない人のためのGit超入門 2019/11/21
VirtualTech Japan Inc./Begi.net Inc.
Git 道場 心:Git総論、心構え
Git 道場 心:Git総論、心構え
Nobuhiro Iwamatsu
Git 実践入門
Git 実践入門
Yasutaka Kanzaki
今さら聞けない人のためのgit超入門
今さら聞けない人のためのgit超入門
VirtualTech Japan Inc./Begi.net Inc.
Git
Git
Appresso Engineering Team
Semelhante a Git天空闘技場_ハンズオン
(13)
Git for beginners
Git for beginners
git 初めの一歩
git 初めの一歩
今さら聞けない人のためのGit超入門 GitLab 14対応版
今さら聞けない人のためのGit超入門 GitLab 14対応版
gitを使う準備をしよう - 初級編
gitを使う準備をしよう - 初級編
Gitを使ってみよう
Gitを使ってみよう
今さら聞けない人のためのGit超入門 OSC2018広島版
今さら聞けない人のためのGit超入門 OSC2018広島版
Git
Git
コード読経会報告書
コード読経会報告書
今さら聞けない人のためのGit超入門 2019/11/21
今さら聞けない人のためのGit超入門 2019/11/21
Git 道場 心:Git総論、心構え
Git 道場 心:Git総論、心構え
Git 実践入門
Git 実践入門
今さら聞けない人のためのgit超入門
今さら聞けない人のためのgit超入門
Git
Git
Mais de sinsoku listy
Rails6にいつ上げるか?
Rails6にいつ上げるか?
sinsoku listy
Rails Testing on Fargate
Rails Testing on Fargate
sinsoku listy
Search Form for Rails
Search Form for Rails
sinsoku listy
ENGINEER WORK!!
ENGINEER WORK!!
sinsoku listy
自己修復的なインフラ -Self-Healing Infrastructure-
自己修復的なインフラ -Self-Healing Infrastructure-
sinsoku listy
毎日gemをアップグレードする生活
毎日gemをアップグレードする生活
sinsoku listy
Rails 5.2: credentials
Rails 5.2: credentials
sinsoku listy
Randomly Failing Specs
Randomly Failing Specs
sinsoku listy
技術的負債とリファクタリング
技術的負債とリファクタリング
sinsoku listy
Git 初心者講座 by forkwell
Git 初心者講座 by forkwell
sinsoku listy
Swift on Docker
Swift on Docker
sinsoku listy
ES2015のカバレッジ計測
ES2015のカバレッジ計測
sinsoku listy
CSSのカバレッジツール
CSSのカバレッジツール
sinsoku listy
本当にあった怖い話 7つの幽霊 7つの成仏
本当にあった怖い話 7つの幽霊 7つの成仏
sinsoku listy
Awsでwindowsゲームを動かす
Awsでwindowsゲームを動かす
sinsoku listy
Action pack variantsの話
Action pack variantsの話
sinsoku listy
LT_Gitのfast fowardと継続的デリバリー
LT_Gitのfast fowardと継続的デリバリー
sinsoku listy
20101001 5分でわかるtrac pluginの作り方_slideshare
20101001 5分でわかるtrac pluginの作り方_slideshare
sinsoku listy
Mais de sinsoku listy
(18)
Rails6にいつ上げるか?
Rails6にいつ上げるか?
Rails Testing on Fargate
Rails Testing on Fargate
Search Form for Rails
Search Form for Rails
ENGINEER WORK!!
ENGINEER WORK!!
自己修復的なインフラ -Self-Healing Infrastructure-
自己修復的なインフラ -Self-Healing Infrastructure-
毎日gemをアップグレードする生活
毎日gemをアップグレードする生活
Rails 5.2: credentials
Rails 5.2: credentials
Randomly Failing Specs
Randomly Failing Specs
技術的負債とリファクタリング
技術的負債とリファクタリング
Git 初心者講座 by forkwell
Git 初心者講座 by forkwell
Swift on Docker
Swift on Docker
ES2015のカバレッジ計測
ES2015のカバレッジ計測
CSSのカバレッジツール
CSSのカバレッジツール
本当にあった怖い話 7つの幽霊 7つの成仏
本当にあった怖い話 7つの幽霊 7つの成仏
Awsでwindowsゲームを動かす
Awsでwindowsゲームを動かす
Action pack variantsの話
Action pack variantsの話
LT_Gitのfast fowardと継続的デリバリー
LT_Gitのfast fowardと継続的デリバリー
20101001 5分でわかるtrac pluginの作り方_slideshare
20101001 5分でわかるtrac pluginの作り方_slideshare
Último
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NTT DATA Technology & Innovation
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
akihisamiyanaga1
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
sugiuralab
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
UEHARA, Tetsutaro
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
FumieNakayama
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
FumieNakayama
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
Hiroshi Tomioka
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
博三 太田
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
Yuki Kikuchi
Último
(9)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
Git天空闘技場_ハンズオン
1.
ハンズオン 200階(カストロ、ヒソカレベル)
2.
基本ルール ● コミットのたびにオブジェクトの図をノー トに書く ● リポジトリの内部を見る
3.
1. リポジトリの作成 ハンズオン用のリポジトリ、作業ディレクトリを作成 する $ mkdir
hh_git $ cd hh_git $ git init
4.
1. リポジトリの作成 .git/ の中身を見る ●
objects/ は info/ と pack/ だけ ● HEAD の中身が master になっている ● refs/heads/ の中身が空 ● refs/tags/ の中身が空
5.
2. READMEを作る 空のファイルをコミットしてみる $ touch
README $ git add README $ git commit -m "add README"
6.
3. リポジトリの状態を見る まずはログを見る $ git
log ここでコミットのハッシュ値(sha-1)をメモる。
7.
3. リポジトリの状態を見る 1. commitオブジェクトの中身を見る $
git cat-file -p <sha-1> 2. 更にtreeオブジェクトの中身を見る $ git cat-file -p <sha-1> 3. .git/objects/ の中身を見る
8.
3. リポジトリの状態を見る 4. リポジトリの状態を図に書く (↓な感じの図をノートに書く) commit tree blob5f97f
543b9 e69de blobのsha-1はファ イル内容で決まるた め、同じになるはず commit, treeのsha-1は環境 によって変わる
9.
4. 別のファイルを作る その前に、一作業。 masterブランチは邪魔なので、ブランチを外す。 commitのsha-1をチェックアウトする。 $ git
checkout <sha-1> ※ この資料だと 5f97f になる ブランチを外した理由は後ほど説明。
10.
4. 別のファイルを作る 課題: 今日の勉強会の内容をメモに書く 1.
ファイルを作成し、add & commit をしてみる 2. cat-file -pで先ほどと同じくノートに図を書く 3. 今作成したファイルを更に編集し、 もう1回 add & commit をする。 4. cat-file -p で同じくノートに図を書く。
11.
4. 別のファイルを作る 5.図がこんな感じになる ● e69de
が同じオブジェクト を参照している 66e82 5f97f 543b9 e69de 8ed4f 89c43 97671 1b92b e69de e69de e3cbd commit, treeのsha-1は環境 によって変わる
12.
5. (無名)ブランチを作る 1. READMEを作った<sha-1>をcheckoutする $
git checkout <sha-1> ※ この資料だと 5f97f 。先ほど作成したファイル がディレクトリから消えればOK 2. README を編集して、commit & 図を書く
13.
5. (無名)ブランチを作る 3.図がこんな感じになる ● gitは自然に分岐する 66e82 5f97f
543b9 e69de 8ed4f 89c43 97671 1b92b e69de e69de e3cbd commit, treeのsha-1は(ry 5226ddc1f7 06931
14.
6. マージコミットを作る 今日の勉強会のメモを書いていたsha-1をマージ する $ git
merge --no-ff <sha-1> ※ この資料だと 8ed4f
15.
6. マージコミットを作る 図がこんな感じになる ● マージコミットは親が2 つある ●
blobが上手くマージさ れている 66e82 5f97f 543b9 e69de 8ed4f 89c43 97671 1b92b e69de e69de e3cbd commit, treeのsha-1は(ry 5226d dc1f7 06931 5e5de dc1f7 97671 bce2d
16.
休憩: fast-forward 図で分かるgit-mergeの--ff, --no-ff,
-- squashの違い http://d.hatena.ne. jp/sinsoku/20111025/1319497900
17.
7. 手作りブランチ 1. 現在のブランチの状況を見てみる $
git branch 2. .git/refs/heads/master を見てみる $ cat .git/refs/heads/master
18.
7. 手作りブランチ 3. 勉強会のメモからブランチを作ってみる $
echo "<sha-1>" > .git/refs/heads/piyo ※ この資料だと 8ed4f... の40桁 4. 作成したブランチが表示される事を確認 $ git branch 5. チェックアウトしてみる $ git checkout piyo
19.
7. 手作りブランチ 6. .git/HEAD
を見てみる => ブランチに変わっている 7. cherry-pickでREADMEの変更を取得してみる $ git cherry-pick <sha-1> ※ この資料だと 5226d 8. ノートに図を書いてみる
20.
7. 手作りブランチ 図がこんな感じになる 66e82 5f97f 543b9
e69de 8ed4f 89c43 97671 1b92b e69de e69de e3cbd commit, treeのsha-1は(ry 5226d dc1f7 06931 5e5de dc1f7 97671 bce2d ... ... ...
21.
7. 手作りブランチ 9. .git/refs/heads/piyo
の中身を見てみる ブランチをcheckout した状態でコミッ トするとsha-1が更新される
22.
8. リモートの変更を取得する 1. リモートにあるリポジトリから変更を取得してみ る。 $
git fetch git://github.com/sinsoku/banana ※もし自分のリポジトリを持っていれば、そちらで 試してもOK
23.
8. リモートの変更を取得する 2. コミットオブジェクトの有無を確認する。 $
git show <sha-1> ※ この資料だと 73c99 リモートの変更が取得できている。ただ、この方法で は<sha-1>が分からないとログを表示できない。
24.
9. リモートに名前をつける 1. URLに名前を付けることができる $
git remote add <name> <url> 例: $ git remote add sinsoku git://github.com/sinsoku/banana
25.
9. リモートに名前をつける 2. リモートの変更を取得する $
git fetch sinsoku 3. .git/refs/remotes/, .git/refs/tags/ を見てみる。 4. git branch -a でブランチを表示する リモートリポジトリのブランチがローカルに複製さ れている事が確認できる
26.
9. リモートに名前をつける 補足 ● リモートのタグも
.git/refs/tags/ に入るため、ローカルとリ モートのタグは混ざる ● リモートのブランチの複製はfetchのタイミングで更新される (リモートが別の人に更新されても、ローカルに複製された ブランチは古いまま) ● git clone <url> は git init の後に、git remote add origin <url> している事と同じ
27.
10. ブランチの履歴 ブランチは更新履歴を持つ $ git
reflog show piyo ● rebaseやresetを使用した時に重宝する ● 基本的に git gcが走るまでオブジェクトが消え たりしない
Baixar agora