< Return to Video

Rebase • GitHub & Git Foundations

  • 0:00 - 0:03
    Git Rebase
    既存のコミットに対して行い―
  • 0:03 - 0:07
    今日から始まるブランチに
    配置することができるものです
  • 0:07 - 0:09
    ♪ (ジャズ風のテーマ音楽) ♪
  • 0:12 - 0:15
    ブランチを作成するのは
    難しい決断です
  • 0:15 - 0:17
    今日からにすべきか
    後で開始するようにすべきか?
  • 0:17 - 0:21
    重要な修正がいくつか
    今まさに起こっているかもしれません
  • 0:21 - 0:23
    明日まで待った方がいいのでしょうか
  • 0:23 - 0:26
    Gitなら そんな難しい決断は不要です
  • 0:26 - 0:28
    好きなときにブランチを開始して
  • 0:28 - 0:31
    実行するつもりの変更を
    残しておきましょう
  • 0:32 - 0:33
    特定の機能や
  • 0:34 - 0:36
    バグや目的の修正に
    特化したものにします
  • 0:39 - 0:41
    マスターブランチで起こりつつある
  • 0:41 - 0:42
    重要な修正に組み込むため―
  • 0:42 - 0:45
    この変更を履歴上では
  • 0:45 - 0:46
    後から開始したい場合は
    どうすればいいでしょう?
  • 0:47 - 0:50
    問題ありません
    Rebase が助けてくれます
  • 0:50 - 0:53
    一般的な使用法ではRebase によって
  • 0:53 - 0:58
    ブランチを履歴の後の方に
    再配置できます
  • 0:58 - 1:03
    つまりあなたのブランチに
    分岐させておいた変更を全て
  • 1:03 - 1:06
    まるでマスターブランチで
    現在起こっている作業の
  • 1:06 - 1:08
    あとから起こったように見せるのです
  • 1:09 - 1:11
    行うことは同じですが
  • 1:11 - 1:15
    マスターブランチから
    今後作られるブランチへと
  • 1:15 - 1:17
    逆マージするよりも
    履歴がすっきりします
  • 1:18 - 1:20
    後のブランチで表示される
    コンテンツは同じですが
  • 1:21 - 1:24
    マージが後のブランチに行われるといった
  • 1:24 - 1:27
    複雑さや履歴上の記録が
    残りません
  • 1:30 - 1:32
    rebase コマンドによって
  • 1:32 - 1:35
    ブランチにある全てのコミットが
    変更されることを覚えておいて下さい
  • 1:36 - 1:38
    全ての作業を保存しますが
  • 1:38 - 1:41
    場所や他のコミットに対する関係性は
  • 1:41 - 1:43
    全て変更されます
  • 1:43 - 1:46
    これは基本的に
    他の人が作業していない
  • 1:46 - 1:49
    自分だけのブランチに行う作業です
  • 1:49 - 1:50
    関係性や
  • 1:50 - 1:52
    各コミットの識別名における変更により
  • 1:52 - 1:55
    他の人の作業と一致させるのは
    難しいのです
  • 1:56 - 2:00
    あなた が作業している
    ブランチについて話していきますが
  • 2:00 - 2:04
    それらの制約を考えると
    使用法はとてもシンプルです
  • 2:04 - 2:07
    Git checkout
    後に作られるブランチに行い
  • 2:08 - 2:12
    git rebase はソースブランチ
    大体マスターブランチに行います
  • 2:13 - 2:15
    そうすると後に作られるブランチに
  • 2:15 - 2:18
    行われるはずのコミットを
    すべて反復して
  • 2:18 - 2:23
    機械的に書き直されたかのように
    マスターブランチの
  • 2:23 - 2:28
    最新の時点から再生します
  • 2:28 - 2:30
    このプロセスが完了したら
  • 2:30 - 2:33
    個々のコミットがすべて
    行われたことを確認して
  • 2:33 - 2:36
    rebase が完了したことを
    知らせてくれます
  • 2:36 - 2:38
    そしてあなたは指示を実行する前と
  • 2:38 - 2:40
    同じような状態に見える
  • 2:40 - 2:42
    コマンドプロンプトに戻ります
  • 2:43 - 2:47
    しかし これらの履歴上のコミットは
    今や新しい識別名を持っていることを
  • 2:47 - 2:49
    念頭に置いておきましょう
  • 2:49 - 2:51
    このパターンを使うリクエストは
  • 2:51 - 2:53
    オープンソースプロジェクトにおいて
    最もよくみられることがわかるでしょう
  • 2:54 - 2:56
    なぜなら コードベースを
    将来読む人たちのために
  • 2:56 - 2:58
    最適化しておこうと考えるためです
  • 2:58 - 3:02
    プロジェクトに将来関わる人たちにとっては
    1本のまっすぐな履歴が
  • 3:02 - 3:05
    一番読みやすいのです
  • 3:05 - 3:07
    このため貢献する人たちの方に
  • 3:07 - 3:09
    履歴をすっきりさせるよう
    負荷をかけているのです
  • 3:09 - 3:11
    これは努力ではありますが
    このプロジェクトに
  • 3:11 - 3:14
    将来関わるすべての 協力者が
    恩恵を受けます
  • 3:17 - 3:19
    継続的に実行されるアプリケーション―
  • 3:19 - 3:21
    例えば ウェブサービスやアプリは―
  • 3:22 - 3:26
    一般的にrebase ではなく
    マージに最適化されています
  • 3:26 - 3:29
    これらは小さく的の絞られた変更を
    マスターブランチに
  • 3:29 - 3:33
    できるだけ素早く実行できるような
    メカニズムが必要だからです
  • 3:34 - 3:36
    それによって行われるべき変更が
    全てなされなければ
  • 3:36 - 3:40
    別のブランチを使って
    またマージするのです
  • 3:40 - 3:42
    Rebase は履歴を明瞭なものに
  • 3:42 - 3:44
    最適化する力強い機能です
  • 3:44 - 3:47
    あなたのプロジェクトやチームの
    必要としている物を確認しましょう
  • 3:48 - 3:50
    今後のブランチに
    素早く実行する必要があれば
  • 3:50 - 3:52
    すぐマージすればいいでしょう
  • 3:52 - 3:55
    明確な履歴が必要なら
    Rebase を使えばいいのです
  • 3:57 - 3:59
    Git & GitHub Foundationsの
    Rebase編を
  • 3:59 - 4:00
    ご覧いただきありがとうございます
  • 4:01 - 4:03
    ここでチャンネルの購読を忘れずに
  • 4:03 - 4:05
    質問やコメントは下からどうぞ
  • 4:05 - 4:09
    ブランチの作り方などの
    関連動画もご覧下さい
Title:
Rebase • GitHub & Git Foundations
Video Language:
English
Team:
GitHub
Project:
Git and GitHub Foundations
Duration:
04:21
There has been no activity on this language so far.

Japanese subtitles

Revisions Compare revisions