GitHub
サイトのコードを自分の GitHub リポジトリで管理できます。好きなタイミングや保存のたびにプッシュし、自分のエディターで作業できます。コミット、ブランチ作成、プル、プルリクエスト作成は AI に任せられます。
接続
- 設定 > コネクタを開き、GitHub、接続の順にクリックします。
- GitHub が開きます。WebTwizz のアクセスを許可します。
- 接続を完了で、このプロジェクトのコードの保存先となるリポジトリを選びます。空のリポジトリを作るには、新しいリポジトリの横にある作成をクリックします。
トークンの貼り付けも、GitHub 側での設定も不要です。
チャットのカードから接続する場合も同じです。アクセスを許可すると、設定 > コネクタの接続を完了が開きます。
画面の見方
-
同期:現在の状態と今すぐプッシュが表示されます。見出しの横にあるリポジトリ名をクリックすると、GitHub で開きます。
- 同期済み:対象のブランチと、前回のプッシュまたはプルの日時、ファイル数が表示されます。
- まだプッシュされていません:最初のプッシュ前に表示されます。
- GitHub が指定の数のコミット分先行しています:誰かが GitHub にプッシュしています。今すぐプルで、その変更をプロジェクトに取り込めます。プッシュとプルがオンの場合は、誰も編集していないときに自動で取り込まれます。
- GitHub と WebTwizz の両方で変更されました:変更は代わりに
webtwizz-syncというブランチに送られています。プルリクエストを作成してマージするか、先に GitHub の変更をプルするよう AI に頼んでください。 - 前回のプッシュは完了しませんでしたまたは前回のプルは完了しませんでした:GitHub からの理由も表示されます。
最後の 3 つの状態では、確認が必要と表示されます。
-
受信した変更:GitHub が先行している場合、今すぐプルで取り込まれるコミットが新しい順に表示されます。各コミットで変更されたファイルも確認できます。コミットをクリックすると GitHub で開きます。
-
対象ブランチの最新のコミット:作成者と日時が表示されます。最新のコミットにチェックがある場合は、チェックに合格しました、チェックを実行中、チェックに失敗しましたのいずれかが表示されます。コミットをクリックすると、この画面で詳細が開きます。メッセージの全文、各チェックの合格、実行中、失敗の状態、変更されたファイルと追加・削除された行、GitHub で開くが表示されます。さらに表示で 10 件追加され、すべてのコミットで GitHub の履歴が開きます。
-
未完了のプルリクエスト:最大 5 件表示されます。下書きには下書きと表示されます。作成者、更新日時、レビューの状態(承認済み、変更が要求されました、レビュー待ち)、チェックも表示されます。クリックすると、この画面で詳細が開きます。説明、マージ元とマージ先のブランチ、チェック、変更されるファイル、GitHub で開くが表示されます。
- リポジトリで許可されているマージ、スカッシュしてマージ、リベースしてマージのいずれかでマージできます。どの操作でも、何をどこにマージするかと、プルリクエストが閉じられることを確認する画面が表示されます。同じボタンで確定します。マージ先のブランチを開いている場合は、その後今すぐプルで変更を取り込めます。
- まだマージできない場合、マージには、下書き、チェックの失敗、競合などの理由が表示されます。
- すべてのプルリクエストで GitHub の一覧が開きます。
-
失敗したジョブを再実行:GitHub Actions のチェックに失敗したコミットやプルリクエストで、確認後に失敗したジョブを再実行します。
-
リポジトリのメインブランチ以外を開いていて、そのブランチからのプルリクエストがまだない場合、プルリクエストの一覧にブランチとプルリクエストを作成が表示されます。
プルリクエストを作成をクリックすると、その場で短いフォームが開きます。ブランチ名から入力されたタイトルと、下書きの項目があります。プルリクエストを作成をクリックすると GitHub に作成されます。自分でマージするまで、何もマージされません。
- 設定:
- リポジトリ:このプロジェクトのコードのプッシュ先です。組織のリポジトリが表示されない場合、GitHub で許可から WebTwizz にアクセスを許可するページを開けます。
- 新しいリポジトリ:作成をクリックすると、リポジトリ名と非公開にするかどうかを指定できます。非公開は、オフにしない限りオンです。名前には英字、数字、ハイフン、アンダースコア、ピリオドを使えます。
- ブランチ:切り替えると、プロジェクトのコードがそのブランチのものに変わります。
- 新しいブランチ:作成をクリックしてブランチ名を指定すると、現在のプロジェクトの状態をもとに、現在のブランチから新しいブランチを作成します。次のプッシュで GitHub に送られます。
- 同期:自分がプッシュしたときでは、あなたか AI がプッシュしたときだけ送信されます。保存のたびにプッシュでは、保存のたびにコミットとプッシュが行われ、30 秒単位でまとめられます。プッシュとプルでは、誰もプロジェクトを編集していないときに、対象ブランチの新しいコミットもプロジェクトに取り込みます。
- コミットメッセージ:変更内容を説明では、AI による変更の要約がある場合、それを使います。WebTwizz からの更新では、毎回その同じメッセージを使います。
- 画面上部のGitHub で開くで、リポジトリを開けます。
リポジトリの対象ブランチにすでにコードがある場合、最初の今すぐプッシュで確認が表示されます。このプロジェクトのファイルは 1 つのコミットとして上書きされ、リポジトリにしかないファイルはそのまま残ります。プッシュ先とブランチ名が表示されたボタンで確定します。最初のプッシュ前に保存のたびにプッシュやプッシュとプルをオンにする場合も同じ確認が表示され、プッシュしてオンにするで最初のプッシュが行われます。
AI ができること
チャットで AI にやりたいことを伝えてください。AI がプロジェクトのコードに対して git を実行し、各手順がチャットに表示されます。
| 伝えること | 実行されること |
|---|---|
| 「コードを GitHub にプッシュして」 | 変更をコミットし、現在のブランチにプッシュします |
| 「これを redesign という新しいブランチにプッシュして」 | ブランチを作成し、切り替えてプッシュします |
| 「GitHub から最新の変更をプルして」 | GitHub 側のブランチの内容をサイトにマージします |
| 「このブランチのプルリクエストを作成して」 | ブランチをプッシュし、プルリクエストを作成します |
| 「プルリクエストのチェックは通っている?」 | プルリクエストのチェックを確認します |
| 「プルリクエスト 12 をマージして」 | GitHub でマージします |
| 「直近 10 件のコミットを見せて」 | 履歴を一覧表示します |
AI がプッシュ、プル、ブランチの切り替え、プルリクエストの作成やマージを行うのは、頼まれたときだけです。GitHub の内容を上書きするよう頼まれない限り、強制プッシュは行いません。
両方で同じファイルを変更した場合、プルは停止します。AI が、サイト側と GitHub 側のどちらを残すか確認します。
別の環境でのコード編集
- サイトを GitHub にプッシュします。
- リポジトリをクローンし、自分のエディターやコーディングツールで編集します。
- 変更を GitHub にプッシュします。
- WebTwizz に戻り、GitHub から最新の変更をプルするよう AI に頼みます。
プッシュされるもの
サイトのソースコードがプッシュされます。依存関係のフォルダー、ロックファイル、.env ファイル、WebTwizz のエディター用ファイルは含まれません。GitHub には、どこでも実行できる完全なプロジェクトが送られます。
シークレット
GitHub によって追加されるシークレットはありません。
補足
- プッシュとプルには、リポジトリの管理者権限が必要です。GitHub が新しいコミットを WebTwizz に通知するために使います。権限がない場合は、リポジトリの所有者に依頼するか、保存のたびにプッシュを使ってください。
- AI がプロジェクトで作業している間は、今すぐプルを実行できません。作業が終わってからプルしてください。
- プロジェクトから GitHub を削除しても、リポジトリとその内容はそのまま残ります。