Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
git勉強会(トラブルシューティングについて考えよう)
Search
EngineerCafe
February 03, 2024
0
220
git勉強会(トラブルシューティングについて考えよう)
EngineerCafe
February 03, 2024
Tweet
Share
More Decks by EngineerCafe
See All by EngineerCafe
台湾視察報告レポート_2024
engineercafe
0
4
インド・バンガロール視察報告会
engineercafe
0
41
イベントレポート_Hacktivation 続:生成AI時代におけるブロックチェーンの可能性
engineercafe
0
46
Docker はじめの一歩 #1 Dockerコンテナを動かしてみよう
engineercafe
0
39
git勉強会 (基本的なコマンドを覚えよう)
engineercafe
0
72
エンジニアのための論文ゆる輪読会 #1【 #ゆるりん 】
engineercafe
0
88
Unityの環境構築
engineercafe
0
58
git勉強会(ブランチを操作しよう)
engineercafe
0
270
GoogleツールでLINEBotを作ってみよう~GAS基礎編~
engineercafe
0
110
Featured
See All Featured
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
Optimizing for Happiness
mojombo
378
70k
Facilitating Awesome Meetings
lara
54
6.4k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
12k
Speed Design
sergeychernyshev
29
940
VelocityConf: Rendering Performance Case Studies
addyosmani
329
24k
4 Signs Your Business is Dying
shpigford
183
22k
Statistics for Hackers
jakevdp
799
220k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Transcript
git勉強会 (トラブルシューティングについて考えよう) 2024年2月4日(日)10時~ 渕上 恵士朗
自己紹介 ・名前:渕上 恵士朗(ふちがみ けいしろう) ・出身:福岡大学商学部 ・仕事:某銀行でアプリ開発(バックエンド) エンジニアカフェスタッフとしてたまに勤務 ・技術:vb.net、SQLServer、IIS(windowsアプリ) 最近kotlin(spring boot)でAPI開発 AWS関連作業もやり始めたり ・業界:ホテル基幹システム、販売管理システム、
バンキングアプリ
イベントの目的 ・gitの初歩から実務的な運用、コマンドまで理解を深める (ステップ別に複数回のイベント実施を企画しています!!) ・よりよいgitの運用方法を皆さんで議論したい ・主催者が転職先でgitを利用するので、使い方を思い出したい
何となくのカリキュラム 1回目:gitをインストールしよう(開催済) 2回目:基本的なコマンドを覚えよう(開催済) 3回目:ブランチを操作しよう(開催済) 4回目:トラブルシューティングについて考えよう(本日開催)
今回の目標 ・競合(conflict)発生時の対応 ・前のコミットに戻りたい(revert) ・前のコミットを消したい(reset) ・コミットをきれいにしたい(reset, push -f) ・特定のコミットのみマージしたい(cherry-pick) ・ブランチのみ切り替えたい(switch) ・特定のファイルやディレクトリはgitで管理しない(ignoreファイル)
コンフリクトとは? ・同じブランチから派生している複数のブランチで同じ個所を編集した際に発生。 どちらの修正が正しいか判断ができないので、人間が目で見て判断してあげる 必要がある。 https://www.engilaboo.com/git-conflict/
前のコミットに戻る(revert) ・取り消したいコミットを消したコミットを新しく作成する https://backlog.com/ja/git-tutorial/stepup/29/
前のコミットに戻る(reset) ・取り消したいコミットを消す(物理的) ・soft,mixed,hardがある(デフォルトはmixed) https://www.r-staffing.co.jp/engineer/entry/20191129_1
push済みのコミットを整理したい ・作業中にレビューを依頼するためにリモートにpushしてプルリクエストを作成。 その時はマージは行わず、全ての作業が完了したタイミングで再度pushを行っ た。このときに1つの修正に対して複数コミットができてしまう。 ・そのブランチは自分のみ作業しているとする ・git reset →git push -f(強制pushを行う)
特定のコミットのみマージしたい(cherry-pick) ・ブランチを切って作業していたが、急遽特定の変更のみ派生ブランチにマージ する必要が出てきた。 https://www.r-staffing.co.jp/engineer/entry/20200327_1
ブランチのみ切り替える(switch) ・checkoutはブランチ操作、ファイル操作も実行される ・2019年からブランチ操作のみ(switch)、ファイル操作のみ(resotre)が実装され た。 ・ファイルは上書きされたくないが、ブランチのみ切り替えたい場合に利用する。 https://hiro8blog.com/git-switch/
特定ファイルは管理しない ・どれだけ気を付けても不要なファイルをaddして気付かずpushまでしてしまうこ とはある。 ・ignoreファイルを作成することでトラッキング対象外にすることができる。 https://qiita.com/anqooqie/items/110957797b3d5280c44f