MVVMCrossの問題についてPull Request(PR)を送信するには、次の詳細な手順に従ってください。
1.問題の再現:まず、問題を一貫して再現できることを確認してください。これは、信頼できるPRを作成するために重要です。可能であれば、MVVMCross Playgroundサンプルアプリを使用して問題を示します。このサンプルはMVVMCrossソースコードに含まれており、問題を分離および再現するための制御された環境を提供します[1]。
2。情報を収集:問題について、できるだけ多くの関連情報を収集します。これには次のものが含まれます。
- 再現するための手順:問題を再現する方法に関する明確な段階的なガイドを提供します。
- 影響を受けるプラットフォーム:問題が発生しているプラットフォーム(Android、iOS、UWPなど)を指定します。
- コードスニペット:問題に関係する関連するコードスニペットを含めます。
- 予想されるvs.実際の動作:実際に起こることと何が起こるかを説明してください[3]。
3.ブランチを作成する:MVVMCrossリポジトリのローカルコピーで、変更のための新しいブランチを作成します。このブランチは、MVVMCrossコードの最新バージョン(「メイン」または「Develop」ブランチなど)に基づいている必要があります。あなたが対処している問題に関連するあなたのブランチの記述名を使用します。
4.変更を加える:ブランチに修正または拡張機能を実装します。変更が最小限であり、特定の問題の解決に焦点を合わせていることを確認してください。バグを修正している場合は、修正を確認するためのテストを含めてみてください。
5.変更をテストする:変更を徹底的にテストして、新しい問題を導入せずに問題を解決することを確認します。 Playground Sampleアプリまたは独自のテストプロジェクトを使用して、修正を確認します。
6.コードのフォーマット:コードがMVVMCrossコーディング標準とフォーマットガイドラインに準拠していることを確認します。 Roslyn Analyzersなどのツールを使用して、一貫性を維持することができます[4]。
7.変更をコミット:明確で説明的なコミットメッセージで変更をコミットします。メッセージには、該当する場合は問題番号への参照を含める必要があります(例:「#xxxxの修正:変更の簡単な説明」)。
8。ブランチを押してください:GitHubのMVVMCrossリポジトリのフォークにブランチを押します。
9。PR:GitHubでPRを送信し、ブランチに移動し、[新しいプルリクエスト]ボタンをクリックします。ベースブランチ(通常は「メイン」または「開発」)を選択し、PRの説明を入力します。含む:
- 変更の簡単な要約。
- 関連する詳細またはディスカッションポイント。
- 関連する問題や議論へのリンク。
10。コミュニティとの関わり:PRを提出した後、MVVMCrossコミュニティと関わる準備をしてください。追加情報を要求したり、変更を提案したり、フィードバックに基づいてPRを更新するように依頼する場合があります。
11. PRを更新する:要求された場合は、新しいコミットを支店に押してPRを更新してください。 GitHubは、新しい変更でPRを自動的に更新します。
これらの手順に従うことにより、MVVMCrossに効果的に貢献し、共同の方法で問題を解決することができます。
引用:[1] https://nicksnettravels.builttoroam.com/post-2018-07-31-debugging-and-contibuting-to-mvvmcross-aspx/
[2] https://www.mvvmcross.com/mvvmcross-5-release/
[3] https://www.nuget.org/packages/mvvmcross/
[4] https://www.mvvmcross.com/documentation/advanced/analysis
[5] https://stackoverflow.com/questions/61632172/mvvmcross-problem-with-adding-new-contentpage
[6] https://stackoverflow.com/questions/61528243/mvvmcross-pdb-debug-symbols-not-loading-in-visual-studio-2019
[7] https://github.com/mvvmcross/mvvmcross/issues/1032
[8] https://github.com/mvvmcross/mvvmcross/issues/215