ドラッグ需要ワークフローと小さな物語の利益
3689 ワード
要求をプルするには、ワークフローからgitflowへ.ストーリーはこちら.
最初に、我々は我々のプロジェクトのためにGitを使用しません.2010年頃、SVNはDropboxとUSBドライブ転送を除いて我々の主なソースコントロール/バージョン管理です🤘 ). 私たちが同じプロジェクトで働いている数人の人々に成長したあと、いくつかの不快感は起こりました、そして、我々は2013年ごろGitを採用することに決めました.
古い機能のコミットを見つける私たちのように….
いつものように、初めての混乱です.いくつかのプロジェクトは、追跡とマージをすることを苦痛にしたGitの歴史を台無しにしました.ブランチを分割する方法、またはどんな適切なワークフローを実装するかについて、コンセンサスはありません.人々はコミットし、彼らが好きなようにプッシュします.最終的に2014年後半に我々はワークフローにgitflowを採用することを決めた.物事は本当に速くなった.私たちは何を追跡し、現在の支店のステータスを知っている.
しかし、特に我々のジュニア開発者に関して、我々が遭遇する若干の痛み点が、あります.明確かつ読みやすい分岐履歴を作成するには、スカッシュ/再ベース/リモート履歴を書き換える必要があります.そして、我々は開発/マスターブランチを保護しないので、歴史は実際に迅速に台無しになった.
2016年に私たちは積極的に私たちのオープンソースライブラリの更新を管理する方法としてプルリクエストを使用して独自のライブラリを少しリリースし始めている.そして、驚くべきことに2017年に、我々の開発者の何人かは、我々がgtflowを取り替えるために、pull - requestワークフローを使うことを提案しました.
正直に言うと、最初はプルリクエストに反対だった.主な理由は、特にレビュアーが忙しいときボトルネックを導入するかもしれないということです.ワークフローを決定するには、いくつかの議論が必要です.しかし、利益対欠点を重くした後に、私は我々のプロジェクトのいくつかでプルリクエストワークフローを実行することに決めました.
結果は信じられない.利点は欠点を完全に上回る.詳しく説明しましょう.
プルリクエストワークフローの利点
上記の追加の規則でプルダウンワークフローを採用した後、私は間違いなく私たちのプロジェクトは、全体的にされていると言うことができます.そこにいくつかの問題があるかもしれませんが、利益は本当に明白です.私は、少なくともあなたの現在のワークフローとの比較のためにこのアプローチを使用しようとすることを提案します.
歓声
免責事項:このポストは、terkaitgame.comで働いている間、私の個人的な経験に基づいています.私たちの毎日の活動とプロジェクトは、モバイルアプリケーション&(時々)クライアントのためのウェブサイトを中心に回っている.それらのポイントと提案は、異なる状況で適用されないかもしれません.
最初に、我々は我々のプロジェクトのためにGitを使用しません.2010年頃、SVNはDropboxとUSBドライブ転送を除いて我々の主なソースコントロール/バージョン管理です🤘 ). 私たちが同じプロジェクトで働いている数人の人々に成長したあと、いくつかの不快感は起こりました、そして、我々は2013年ごろGitを採用することに決めました.
古い機能のコミットを見つける私たちのように….
いつものように、初めての混乱です.いくつかのプロジェクトは、追跡とマージをすることを苦痛にしたGitの歴史を台無しにしました.ブランチを分割する方法、またはどんな適切なワークフローを実装するかについて、コンセンサスはありません.人々はコミットし、彼らが好きなようにプッシュします.最終的に2014年後半に我々はワークフローにgitflowを採用することを決めた.物事は本当に速くなった.私たちは何を追跡し、現在の支店のステータスを知っている.
しかし、特に我々のジュニア開発者に関して、我々が遭遇する若干の痛み点が、あります.明確かつ読みやすい分岐履歴を作成するには、スカッシュ/再ベース/リモート履歴を書き換える必要があります.そして、我々は開発/マスターブランチを保護しないので、歴史は実際に迅速に台無しになった.
2016年に私たちは積極的に私たちのオープンソースライブラリの更新を管理する方法としてプルリクエストを使用して独自のライブラリを少しリリースし始めている.そして、驚くべきことに2017年に、我々の開発者の何人かは、我々がgtflowを取り替えるために、pull - requestワークフローを使うことを提案しました.
正直に言うと、最初はプルリクエストに反対だった.主な理由は、特にレビュアーが忙しいときボトルネックを導入するかもしれないということです.ワークフローを決定するには、いくつかの議論が必要です.しかし、利益対欠点を重くした後に、私は我々のプロジェクトのいくつかでプルリクエストワークフローを実行することに決めました.
結果は信じられない.利点は欠点を完全に上回る.詳しく説明しましょう.
プルリクエストワークフローの利点
Clean git history by using pull request, we can easily squash those redundant / unimportant / unclear commits before merging into main branch. This is enforced by our protected branch policy. Only the lead / captain can merge into main branch. Other developers are free to do whatever they want in their branches
Meaningful git history we used to neglect this one aspect but turns out this is more important than we think. By adhering with our branch naming convention, all pull requests and merge(s) becomes easier to read and provide features / fixes history. In the end, your git history can be a tools to track productivity and/or project velocity.
Remote code review process before pull request, we did code review face to face either by pair programming or code presentation session. Using pull request as our workflow, code review can be done before pull request is merged. This enable smooth code review process, even while doing remote work.
Better software quality making pull request means that the feature need to be approved by captain / lead and QA / QC. Before pull request, all features and fixes can be merged to main branch hence updating staging server without the knowledge of QA / QC. This makes testing harder because there is no way to ensure the staging server state. Doing pull requests means that staging server state will only be updated after all changes are approved by lead & QA. This ensures that all codes in our staging server is already inspected by several stakeholders hence better quality.
プル要求ワークフローの欠点Long review process especially when the captain / lead is busy. otherwise, all is well.
Time / process overhead there are some complaints that doing pull request resulting in more process to be done. You need to create a pull request in browser, adding comments & change logs, waiting & fixing for feedbacks etc. Sometimes an idle time happens because the developer is waiting for approval and cannot start working on new branch. We discourage working on parallel branches because we believe that focus is important.
我々のプロジェクトのいくつかにプル・リクエスト・ワークフローをうまく実装したとしても、冗長性/誤動作が起こらないように、詳細なガイドが必要です.いくつかの議論の後、我々はこのワークフロー規則を思いつきました.あなたのフィードバックとこの問題に関する入力を与える無料!上記の追加の規則でプルダウンワークフローを採用した後、私は間違いなく私たちのプロジェクトは、全体的にされていると言うことができます.そこにいくつかの問題があるかもしれませんが、利益は本当に明白です.私は、少なくともあなたの現在のワークフローとの比較のためにこのアプローチを使用しようとすることを提案します.
歓声
免責事項:このポストは、terkaitgame.comで働いている間、私の個人的な経験に基づいています.私たちの毎日の活動とプロジェクトは、モバイルアプリケーション&(時々)クライアントのためのウェブサイトを中心に回っている.それらのポイントと提案は、異なる状況で適用されないかもしれません.
Reference
この問題について(ドラッグ需要ワークフローと小さな物語の利益), 我々は、より多くの情報をここで見つけました https://dev.to/rusnata05/benefits-of-a-drag-demand-workflow-and-a-little-story-4m5mテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol