http://sourceforge.net/projects/iotabuildit/で開始したばかりのプロジェクトがあります(詳細はhttp://sourceforge.net/p/iotabuildit/wiki/Home/を参照)。) は、現在リビジョン管理に Mercurial を使用しています。そして、Mercurial と SourceForge は、私がこのプロジェクトで考えているコラボレーション メカニズムをまとめるのに適切な機能や要素をほぼすべて備えているように見えますが、まだそこまで到達していないと思います。私は、人々が多数の個人からの個々の変更について提出し、議論し、投票できるようにしたいと考えています (プロジェクトが通常持っているよりも多くの開発者)。そして、ユーザーがこれにできるだけ簡単に参加できるようにしたいと考えています。現在考えられているのは、ベースの「コード」リポジトリのクローンである「free4all」フォークをクローンするか、独自の SourceForge ユーザー プロジェクトで独自のフォークを作成できるということです (SourceForge は現在、すべてのユーザーにワークスペースを提供しています)。さまざまなプロジェクト関連のコンテンツをホストします)。次に、それをローカル リポジトリにクローンできます (TortoiseHg または好みの Mercurial クライアントをダウンロードした後)。次に、変更を加え、コミットし、フォークにプッシュし、ベースの「コード」リポジトリへのマージを要求できます。この時点で、マージ要求について議論/レビューできます。これはまだ手順が多すぎて、私が望んでいるよりも形式的です。
Mercurial には「シェルビング」のようなものがあるようですが、それが SourceForge リポジトリでどのようにサポートされているか/サポートされているかはわかりません。また、マージ要求があるため、棚上げされた変更について議論する方法はおそらくありません。
これを簡単にする提案を探しています。理想的には、ユーザーが次のことができるようにしたいと考えています。
- プレイしたいバージョンを指定し、リクエストされたバージョンをホストされているソース管理から抽出して、ユーザーがSourceForgeでプレイできるようにします (セキュリティ上の制限により、ゲームをローカルでプレイできないため、Chrome ブラウザは JavaScript コードへのアクセスに適切に適用されます)。独立したファイルの画像コンテンツ)
- ユーザーがローカル編集用に要求されたバージョンのプロジェクトをダウンロードできるようにします (同じソースからビルドされた C# バージョンもローカルで再生できます。または、Internet Explorer は明らかにセキュリティ制限を無視し、ブラウザーでのローカル再生を許可します)。
- 提出/投稿された他の互換性のある「ブランチ」またはゲームのバージョンとマージできるフォームで提出された変更を受け入れます (理想的には、これは非常に単純です。おそらく、ファイルのセット全体をサーバーにアップロードするだけです)。比較およびパッチ/差分抽出がそこで実行されます)
- 他のプレイヤーは、提出された利用可能なパッチのリストを見て、プレイ/テストするセットを選択し、変更について議論したり投票したりできます。
明らかに、これらの要件の一部は非常に具体的であり、理想的な目標を達成したい場合は、おそらくサーバー側のコードを記述する必要があります。しかし、必要な機能の多くがすでにほとんど揃っている場合は、抵抗が最も少ない方法を使用して、利用可能なテクノロジを使用したいと考えています。または、サーバー コードを記述せずに、前に概説したプロセスよりも少しでも近づくことができるかどうかを確認したいと思います。では、これを行うのに役立つピースは何ですか? Mercurial と SourceForge は、私が望む方法で棚上げされたコードの保存と共有をサポートしていますか? この「Patch Queue」(表示されますが、理解できない、またはまだ機能していない) に役立つものはありますか? ユーザーが Mercurial コンポーネントをダウンロードすることなく、(サーバー側の) リポジトリ内の特定のリビジョンと比較して、特定のファイル セットからパッチ ファイルを抽出する方法はありますか?