> ## Documentation Index
> Fetch the complete documentation index at: https://docs.replit.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 貢献を行う

> Replit を使って既存のリポジトリに小さく的を絞った変更を加え、開発プレビューで確認し、チームがレビューするためのプルリクエストを準備します。

[Replit でアプリを実行](https://docs.replit.com/ja/build/code/run-your-first-preview.md)できたので、次は貢献を行いましょう。同じチャットで、[GitHub](https://github.com) または [GitLab](https://gitlab.com) の同じリポジトリを使って続けます。

このチュートリアルでは、[Cloud Agent Demo](https://github.com/replit/cloud-agent-demo) を使って、ランディングページに小さな変更を加えます。ご自身のリポジトリを使う場合は、同様の変更を選んでください。

## 変更を行って提案する

**1. 変更を依頼する**

ランディングページのメイン見出しを更新するよう Replit に依頼します。

Change the landing page heading from "Bring ideas into your codebase."
to "Turn ideas into improvements."
Show me the updated preview.

Replit は該当するコードを見つけて見出しを更新し、プレビューに変更を表示します。

![ランディングページの見出しを変更するリクエストと、プレビューに表示された更新後の見出し。](https://mintcdn.com/replit/ZvLiuMLrojYoqf3I/images/code-contributions/contribution-result.jpg?fit=max\&auto=format\&n=ZvLiuMLrojYoqf3I\&q=85\&s=f0f07232da0695764b98a84000a0eeae)

現時点では、クラウド開発環境内のローカルコピーで作業しています。後でプルリクエストを開き、変更をリポジトリに提案します。

**任意:** アプリに API キーなどの認証情報が必要な場合は、チャットではなく [Secrets](https://docs.replit.com/ja/build/code/navigate-your-workspace.md#secrets) を使って安全に追加してください。デモでは必要ありません。

**2. 変更をテストする**

プレビューを確認し、変更が正しく見え、期待どおりに動作することを確かめます。

* **見た目:** 見出しがデスクトップとモバイルで読みやすく、テキストが切れたり重なったりしていないか確認します。
* **動作:** ページのボタンやリンクを試して、引き続き動作することを確認します。
* **テスト:** 関連するチェックを実行し、失敗があれば説明するよう Replit に依頼します。

Test this change on desktop and mobile and show me the results.

Replit は、実行中のプレビューに対して、ブラウザーで変更をテストできます。チャットの **Testing your app** アクティビティには、ブラウザーセッションと確認内容が表示されます。この例では、Replit がモバイルメニューとキーボード操作を確認しています。

![チャットのテストアクティビティが強調表示され、ブラウザーセッションとモバイルメニューの確認が表示されている。](https://mintcdn.com/replit/ZvLiuMLrojYoqf3I/images/code-contributions/browser-testing.jpg?fit=max\&auto=format\&n=ZvLiuMLrojYoqf3I\&q=85\&s=542aad7e97d865a27dda6deaf5a6553e)

これは完了したテスト結果ではなく、確認の途中経過です。何が合格し、何を検証できなかったかは、Replit の最終レポートで確認してください。

**任意: 的を絞った追加の変更を行う。** 結果を改良したい場合は、確認しやすい変更を 1 つ依頼します。たとえば、ラベルをより明確にする、リンクを修正する、スタイルを少し調整するなどです。何を変更し、何をそのままにするかを伝えてください。例:

Rename the "See how it works" button to "Explore the workflow".

貢献は、テキストの変更のような単純なものから、機能全体のような包括的なものまで、さまざまです。大きな変更では、実現したい成果を説明し、その後の依頼で詳細を詰めていきます。

追加の変更を行うたびに、更新後のプレビューと関連するテスト結果を確認してください。ビジュアルなインターフェースのない変更では、代わりにテスト結果とコードの差分を確認します。

**3. 変更をプッシュする**

結果を確認したら、変更をチームに提案するよう Replit に依頼します。

> [!NOTE]
>
> デモを使っている場合は、この手順の前にご自身の独立したリポジトリを作成してください。練習用の貢献は、元のデモリポジトリに入れないでください。

Push these changes to a new branch in my repository and open a pull request.
Summarize what changed and how it was tested.

![見出しの変更を新しいブランチにプッシュし、プルリクエストを開くよう Replit に依頼している。](https://mintcdn.com/replit/ZvLiuMLrojYoqf3I/images/code-contributions/push-request.jpg?fit=max\&auto=format\&n=ZvLiuMLrojYoqf3I\&q=85\&s=dcf4cc6bf0f6d54e7cf6d280bf870d52)

Replit はブランチをプッシュし、プルリクエストを開きます。この例では、Changes ペインに見出しの更新が表示されます。削除されたテキストは赤、置き換え後のテキストは緑です。

![Replit が、開いたプルリクエストと、Changes ペインの見出しの変更を表示している。](https://mintcdn.com/replit/ZvLiuMLrojYoqf3I/images/code-contributions/push-result.jpg?fit=max\&auto=format\&n=ZvLiuMLrojYoqf3I\&q=85\&s=628442b1340c4cea26814d92b903fed9)

GitHub のリポジトリの **Pull requests** タブでもリクエストを確認できます。

![GitHub のプルリクエスト一覧で、見出し変更のプルリクエストが強調表示されている。](https://mintcdn.com/replit/ZvLiuMLrojYoqf3I/images/code-contributions/github-pull-request.jpg?fit=max\&auto=format\&n=ZvLiuMLrojYoqf3I\&q=85\&s=8a67bfdb083244876b5abec420321f6d)

開いて **Files changed** を選択すると、差分をレビューできます。ここでは見出しだけが変更され、ページのそれ以外の部分は変わっていません。

![GitHub の Files changed タブに、古い見出しが Turn ideas into improvements に置き換えられた差分が表示されている。](https://mintcdn.com/replit/ZvLiuMLrojYoqf3I/images/code-contributions/github-diff.jpg?fit=max\&auto=format\&n=ZvLiuMLrojYoqf3I\&q=85\&s=1a97bd4c133d2554e66909e9229d9825)

GitLab の場合は、マージリクエストを依頼してください。チームは、マージする前に変更をレビューできます。リクエストを開いても、変更はマージもデプロイもされません。

**Details** サイドバーには、このチャットにリンクされたプルリクエストが、環境の下に一覧表示されます。リクエストを選択すると、その変更とレビューの状況に戻れます。

![Details サイドバーに、環境と、現在のチャットにリンクされたプルリクエストが表示されている。](https://mintcdn.com/replit/ZvLiuMLrojYoqf3I/images/code-contributions/pull-request-details.jpg?fit=max\&auto=format\&n=ZvLiuMLrojYoqf3I\&q=85\&s=af16a78f89c1f02c47b95b333f532a74)

このスクリーンショットは、同じリクエストの後の改訂時の状態を示しています。次は、そのレビューフィードバックへの対応方法を学びます。

次は、[レビューフィードバックへの対応](https://docs.replit.com/ja/build/code/respond-to-review-feedback.md)方法を学びましょう。
