Slide 1

Slide 1 text

リポジトリは 宝箱! チーム開発から 学んだGitHubの 便利な使い方 2024/06/2 ふみふみ PyLadies Tokyo Meetup #92 Git/GitHub with Java女子部

Slide 2

Slide 2 text

今日の目標

Slide 3

Slide 3 text

「これ私も使ってみよう!」

Slide 4

Slide 4 text

と感じる技を 1つ覚えて帰ってもらう

Slide 5

Slide 5 text

君は誰だ(自己紹介) ふみふみ - Webエンジニア - 社会人 4年目(21卒) - PyLadies メンバー GitHub: 2323-code Zenn: ふみふみ Connpass: 2323

Slide 6

Slide 6 text

まとめ 1. GitHubのリポジトリは事例の宝庫! 2. GitHubのリポジトリに救われた例 a. 慣れない言語やライブラリの「動く事例」 b. 命名の検討 c. トラブルシューティング d. ライブラリの検討 e. 正規表現でコード内検索 f. メソッドのリファレンス 3. みんなも使ってみてね

Slide 7

Slide 7 text

今日話すこと 1. Gitとは 2. GitHubとは 3. チーム開発でGitHubに救われた事例(今日のメイン) 4. まとめ

Slide 8

Slide 8 text

Gitとは https://www.git-scm.com/downloads/logos

Slide 9

Slide 9 text

Gitとは、コンテンツの変化を管理するプログラム。 バージョン管理システム( VCS)の1つ。 … バージョン管理?

Slide 10

Slide 10 text

もしVCSが無いと... 例: - すごい文章.txt - すごい文章(1).txt - すごい文章_(2).txt - すごい文章_(1)_最終版.txt どれが最新かわかりますか? 2つ前に戻したい場合は? https://www.irasutoya.com/2019/01/blog-post_469.html

Slide 11

Slide 11 text

Gitのしくみ 最新の安定版ソースコード リモートリポジトリへ pushなど

Slide 12

Slide 12 text

GitHubとは https://github.com/logos

Slide 13

Slide 13 text

GitHubとは(概要) Gitホスティングプラットフォーム。 …ホスティングプラットフォーム?

Slide 14

Slide 14 text

Gitのしくみ(再掲) GitHub がホスティング!

Slide 15

Slide 15 text

GitHubで出来ること - 地理的に離れた人たち同士で共同作業! - CI/CD - プロジェクトやチームの管理 - リポジトリの公開・非公開 などなど。

Slide 16

Slide 16 text

リポジトリとは Git - バージョン管理の対象になるファイル、 ディレクトリ、更新履歴などの一群 GitHub - コードやファイル、それぞれのファイルを 時間と共にどのように変更したかを格納できる場所。 今回はこっち

Slide 17

Slide 17 text

チーム開発で 学んだ GitHubの使い方

Slide 18

Slide 18 text

チーム開発でGitHub 使ってますか?

Slide 19

Slide 19 text

使ってるよ〜!って人🙋

Slide 20

Slide 20 text

GitHubのリポジトリは宝箱

Slide 21

Slide 21 text

リポジトリ=事例の宝庫!

Slide 22

Slide 22 text

GitHubのリポジトリの事例に救われた例 1. 慣れない言語やライブラリの「動く事例」 2. 命名の検討 3. トラブルシューティング 4. ライブラリの検討 5. 正規表現でコード内検索 6. メソッドのリファレンス

Slide 23

Slide 23 text

ぜひ、一緒に手を動かしながら

Slide 24

Slide 24 text

1. 「動く事例」

Slide 25

Slide 25 text

慣れない言語やライブラリの「動く事例」 mainブランチ = 安定版のソースコード! - 先輩 - 上司 - OSSの開発者 先人の事例を真似て動かすのは勉強になる

Slide 26

Slide 26 text

慣れない言語やライブラリの「動く事例」 写経 + 改造 = 自分の力にする! - 自分のPJに合わせて内容を改造 - 動く状態を作りながら学ぶ

Slide 27

Slide 27 text

/ Ruby の gem でも できたよ! \

Slide 28

Slide 28 text

2. 命名の検討

Slide 29

Slide 29 text

命名の検討 命名に悩んだら、とりあえず GitHub上で検索! - ヒット数 多 = よりポピュラー! - 直感的な命名に悩んだ時に。

Slide 30

Slide 30 text

例: 「入力値」という変数を用意したい時 ... - input_value - inputed_value どちらの方が良いだろう...

Slide 31

Slide 31 text

inputed_value: 99件

Slide 32

Slide 32 text

input_value: 70,100件

Slide 33

Slide 33 text

3. トラブルシューティング

Slide 34

Slide 34 text

トラブルシューティング Issue の検索 - ライブラリのリポジトリ - is_closed にエラー文章を入れて調べてみる - すでに解決済みかも

Slide 35

Slide 35 text

トラブルシューティング コードの共有 - 社内の先輩・上司に相談する時 - エラー箇所の共有、説明 - パーマリンクをコピー

Slide 36

Slide 36 text

No content

Slide 37

Slide 37 text

No content

Slide 38

Slide 38 text

4. ライブラリの検討

Slide 39

Slide 39 text

ライブラリの検討 このライブラリ、どれくらいメンテされてる? - Insights - どれくらい開発が活発かを見られる - 導入するの参考に。

Slide 40

Slide 40 text

ライブラリの検討 Ex: Requests (python) - 今週どれくらいプルリクされた? - issueはどれくらい捌かれている?

Slide 41

Slide 41 text

No content

Slide 42

Slide 42 text

ライブラリの検討 Ex: hubot-scripts (python) - 2023年6月にアーカイブされたライブラリ。

Slide 43

Slide 43 text

No content

Slide 44

Slide 44 text

5. コード内検索

Slide 45

Slide 45 text

コード内検索に正規表現が使える 正規表現とは - 文字列内で文字の組み合わせを照合するために用いられるパターンです。 (MDNより) - GitHubで検索したい場合はスラッシュで囲む - 「/正規表現/ 」 - [ ] - [ ] 内に含まれる文字 - [^] - [ ] に含まれない文字

Slide 46

Slide 46 text

コード内検索に正規表現が使える 1. GitHub で Gitのリポジトリを開く 2. /git.*add/ と検索 a. . 任意の一文字 b. * 前のパターンが0回以上繰り返し c. git で始まって、 add で終わるコードのみが表示される

Slide 47

Slide 47 text

No content

Slide 48

Slide 48 text

No content

Slide 49

Slide 49 text

6. シンボル

Slide 50

Slide 50 text

関数名をダブルクリックで参照元が見える この変数(メソッド)、元はどこに何て書いてあるの? - コードリーディングするときに - ライブラリのソースコード - 先人のコード

Slide 51

Slide 51 text

No content

Slide 52

Slide 52 text

In this file (このファイル内)

Slide 53

Slide 53 text

まとめ 1. GitHubのリポジトリは事例の宝庫! 2. GitHubのリポジトリに救われた例 a. 慣れない言語やライブラリの「動く事例」 b. 命名の検討 c. トラブルシューティング d. ライブラリの検討 e. 正規表現でコード内検索 f. メソッドのリファレンス 3. みんなも使ってみてね

Slide 54

Slide 54 text

参考文献 - O'Reilly Japan - 実用 Git 第3版 - オライリー - Pro Git - 日本語版 - 2024/05/19 ダウンロード。 - Git研修【MIXI 23新卒技術研修】 - Speaker Deck - 2024/05/29 最終閲覧。 - GitHub 上のコード間を移動する - GitHub Docs - 2024/05/29 最終閲覧。 - Improving GitHub code search - 2024/06/02 最終閲覧 - GitHub Code Search の構文について - GitHub Docs - 2024/06/02 最終閲覧。 - learn-regex/translations/README-ja.md at master - 2024/06/02 最終閲覧 - 正規表現 - JavaScript | MDN - 2024/06/02 最終閲覧。

Slide 55

Slide 55 text

使用素材 - ロゴ - Git - Logo Downloads - GitHub Logos and Usage - いらすとや さん - 光る電球のイラスト | かわいいフリー素材集 いらすとや - 何が何だかわからない人のイラスト(女性) | かわいいフリー素材集 いらすとや - 宝箱・宝物のイラスト | かわいいフリー素材集 いらすとや - プログラムのコードが表示されたコンピューターのイラスト | かわいいフリー素材集 いらすとや - チームでプログラミングをしているイラスト | かわいいフリー素材集 いらすとや - 「OK」と「NG」のマーク | かわいいフリー素材集 いらすとや - いろいろな表情のパソコンを使う人のイラスト(女性) | かわいいフリー素材集 いらすとや - ひらめいた人のイラスト(女性) | かわいいフリー素材集 いらすとや

Slide 56

Slide 56 text

よきGit/GitHubライフを❤