$30 off During Our Annual Pro Sale. View Details »

Intro to Git GUI Client

ryosms
November 30, 2019

Intro to Git GUI Client

2019/11/30 @合同勉強会 in 大都会岡山

ryosms

November 30, 2019
Tweet

More Decks by ryosms

Other Decks in Technology

Transcript

  1. Intro to Git GUI Client
    @合同勉強会 in 大都会岡山 -2019 Winter-

    View Slide

  2. INTRODUCE MYSELF
    Ryo Sumasu
    @ryosms
    #gbdaitokai
    [Your Picture]
    I am a GitKraken Ambassador, not a paid employee of GitKraken by Axosoft.

    View Slide

  3. AJENDA:
    意識の低いgitの始め方
    CLI vs GUI
    GitKrakenの紹介
    https://blog.axosoft.com/git-gui-vs-cli/
    GitKraken Git GUI vs the CLI

    View Slide

  4. AJENDA:
    意識の低いgitの始め方
    CLI vs GUI
    GitKrakenの紹介
    https://blog.axosoft.com/git-gui-vs-cli/
    GitKraken Git GUI vs the CLI

    View Slide

  5. 意識の低いgitの始め方
    https://qiita.com/ryosms/items/2386eb9ed34b69b9b427
    • 2013年5月にgitの布教を目的として投稿
    • 「怖い人たちが色々と言ってるけど、そのあたりは丸っと無視して、
    とりあえず使い始めてその便利さを体験してほしい」という思いで
    作成
    • 黒い画面が怖いならGUIツールを使おう
    • 今でも大筋での意見は変わってない
    • 当時と比べてGitHubが一般的になったのでclone、pull/pushくらい
    は最初から使えたほうがいいかもしれない

    View Slide

  6. AJENDA:
    意識の低いgitの始め方
    CLI vs GUI
    GitKrakenの紹介
    https://blog.axosoft.com/git-gui-vs-cli/
    GitKraken Git GUI vs the CLI

    View Slide

  7. someone
    at SNS
    GitはCLIで使って
    ナンボでしょ

    View Slide

  8. CLIを選ぶ理由
    https://dev.to/ben/on-gui-shaming-and-a-mountain-of-hot-takes-3oh0
    • ITエンジニアとCLIは友達
    • むしろ、恋人かもしれない
    • CLIを使いこなせて一人前
    • CLIを使いこなすことは、コンピュータを使いこなしている感覚があ

    • GUIのツールだと自動化が難しい
    • GUIのツールを使うのは恥ずかしい

    View Slide

  9. CLIよりGUIが向いているケース
    例えばスマホ
    • アプリの起動方法が、アイコンをタップするのではなくコマンド
    入力だったら?
    • 写真を撮るためにコマンド入力する必要があったら?
    • コマンドでツイートできるのであれば大歓迎かもしれませんが…
    極端な例

    View Slide

  10. GitKraken
    Git GUI vs the CLI
    Life is too short to
    still be using the
    command line.

    View Slide

  11. GUIのススメ
    Don’t GUI-shame

    View Slide

  12. Dan Clarke
    blogger and co-organizer of .Net Oxford group
    I certainly know Git very well, and
    honestly think I’m far faster and more
    efficient in a Git GUI than I could
    possibly be in the command line – and
    I’m certainly not slow in the CLI

    View Slide

  13. GUIのススメ
    A common mantra for devs is
    “work smarter, not harder.”
    There’s no reason GUIs should
    be the exception to this rule.
    https://blog.axosoft.com/git-gui-vs-cli/

    View Slide

  14. AJENDA:
    意識の低いgitの始め方
    CLI vs GUI
    GitKrakenの紹介
    https://blog.axosoft.com/git-gui-vs-cli/
    GitKraken Git GUI vs the CLI

    View Slide

  15. Commit in wrong branch
    • 新機能を開発するのにfeatureブランチで作業したい
    • 間違えてmasterブランチで作業してコミットしてしまった
    • コミットをfeatureブランチに持っていきたい
    • masterブランチをコミット前に戻したい

    View Slide

  16. CLIの場合
    Cherrypickが必要なケース

    View Slide

  17. Commit in wrong branch
    • git log でCherrypick対象のコミットハッシュを調べる
    • git switch でfeatureブランチに移動
    • git cherry-pick でコミットをfeatureブランチに適用
    • git switch でmasterブランチに移動
    • git log でmasterを戻したいコミットのハッシュを調べる
    • git reset でmasterを復元

    View Slide

  18. DEMO on GitKraken
    時間がない場合は割愛

    View Slide

  19. Commit in wrong branch
    • git log でCherrypick対象のコミットハッシュを調べる
    • git switch ダブルクリックでfeatureブランチに移動
    • git cherry-pick 右クリックでコミットをfeatureブランチに適用
    • git switch ダブルクリックでmasterブランチに移動
    • git log でmasterを戻したいコミットのハッシュを調べる
    • git reset 右クリックでmasterを復元

    View Slide

  20. Rebase with Conflict
    リベースしたらコンフリクトしたのでリカバリーしたい

    View Slide

  21. CLIの場合

    View Slide

  22. Rebase with Conflict
    リベースしたらコンフリクトしたのでリカバリーしたい
    • git rebase でリベースを開始する
    • git status でコンフリクトしたファイルを確認する
    • editor でコンフリクトした場所を修正する
    • git add でファイルの修正内容をstageする

    View Slide

  23. Rebase with Conflict
    リベースしたらコンフリクトしたのでリカバリーしたい
    • git rebase でリベースを開始する
    • git status でコンフリクトしたファイルを確認する
    • editor でコンフリクトした場所を修正する
    • git add でファイルの修正内容をstageする
    • git commit

    View Slide

  24. Rebase with Conflict
    リベースしたらコンフリクトしたのでリカバリーしたい
    • git rebase でリベースを開始する
    • git status でコンフリクトしたファイルを確認する
    • editor でコンフリクトした場所を修正する
    • git add でファイルの修正内容をstageする
    • git rebase --continue でリベースを再開する

    View Slide

  25. DEMO on GitKraken
    時間がない場合は割愛

    View Slide

  26. Rebase with Conflict
    https://www.youtube.com/watch?v=-3yqteu-pLM
    featureブランチで作業中にmasterの内容を取り込む場合
    • git rebase ブランチをドラッグしてリベースを開始する
    • git status でコンフリクトしたファイルを確認する
    • editor GitKrakenのマージツールでコンフリクトを修正する
    • git add でファイルの修正内容をstageする
    • git rebase --continue ボタンをクリックしてリベースを再開する

    View Slide

  27. Life’s Too Short for the CLI
    Your Mouse is Your Friend

    View Slide

  28. https://www.gitkraken.com
    /invite/xKSqCHYi
    FREE GITKRAKEN ACCOUNT
    I am a GitKraken Ambassador, not a paid employee of GitKraken by Axosoft.
    Use my referral URL to be entered to win a Nintendo Switch!

    View Slide