当社のクライアントは機能ブランチなしヘリットを使用しており、これまでのところ、彼らは通常、新しいストーリーのためにかなり大きな変更セットを持っていました。私たちの会社はコードベースで新しくなったので、私たちはユーザーの話を対にして取り組んでいます。 1件のレビュー:2人が狭くコラボレーションしている場合、Gerritで使用するワークフローは何ですか?
ヘリットは1つのコミッター以外のシナリオに対処しはなはだ少しドキュメントを持っているようです。それはヘリットと繰り返し書き換え公共履歴を共有変化にその主張のためではありませんでした、その答えは以下の、たとえば、ワークフローだろうどのような「機能ブランチ、スカッシュ、後でそれをマージ共有」のようになります。
- AnneとBarneyは、ウィジェットのリストを編集するフォームで協力しています。
- 大型既存のコードベースに取り組んでの認知的負荷を分割するには、アンは「バックエンド」に焦点を当てます - 正しくドメインモデル内のウィジェットを交換/追加/削除。 Barneyは "フロントエンド"で作業します - フォームをデザインし、UIコードを書いてください。
- デザインは、アンはバーニーが使用するIWidgetServiceを公開するということです。さて、これが唯一のUIとビジネスロジックとの素敵な明確な境界を持っているのに役立つ - これはフロントまで実装はるかに少ない、凍結することができるAPIではありません。
- これは、BarneyがIWidgetServiceを少し変更する必要がありますが、インタフェースに対してコードを作成し、Anneに任せて、コードの一部がよりよく分かっているので変更を実現する必要があることを意味します。
も完全に見直しベースのプロセスをバイパスしていない間アンバーニーは、自分の仕事を同期できるようにするには、この場合にやるべきことを正確に何
(名前は。無実を保護するために変更)とお互いのコンピュータをリモートでセットアップするだけですか?できれバーニーは、Gitリポジトリに完全に新しいですので、アンは彼女がむしろないと思いますGitの手術のビットを行う方法を知っている一方で、など慣用的に可能な限りのGitを使用しています。 (例えば悪い=「バックエンド」チェンジセットとそれに基づいた「フロントエンド」チェンジセットを作成し、いずれかが更新されると、物事を正しく再構築するいくつかのブードーを行います)。
私も同じような質問があります。これを聞いて以来、Gerritで共同制作されたフィーチャーワークフローを理解しましたか? – redhotvengeance
@redhotvengeance - 私は "Git surgery"と一緒に行きました。私たちがしていることは、いつでも、人はチェンジセットを「所有している」ということです。私はある種の骨格をチェックして、同僚が当面コード化することができるかどうかチェックします。私たちは独立していて、今は同期しています。つまり、私の同僚は私が歴史を書き直していることを知っています。私はチェリーで一緒にコミットを貼り付けます.Gerritの最新バージョンをお互いに選んで、レビューのために提出してください。チェンジセットを小さくしたままにしておき、今度はそれらを統合してからマージすることができます。 – millimoose
@redhotvengeance - これは、いつでも私たちが所有するチェンジセットを他の誰かの変更に影響を与えずに修正できることを意味します。これは本当に苦痛です。 Gitの手術はかなり厄介ですが、実際にはエラーが発生しやすく、時間がかかります。そして、マージされるまでチェンジセットを小さくすることは、マスターへのリベースを容易にします。 – millimoose