私は現在、Git を使用しているチームに属しており、ワークフローはかなり良好です。dev と master の 2 つのブランチを持つ中央リポジトリがあります。個々のタスクに取り組むためにローカル ブランチを作成します。準備ができたら dev にマージします。その後、準備が整ったら master にマージし、すべてのリリースにタグを付けます。複数の開発者がより直接的にタスクに協力する必要がある場合は、一時的なリモート ブランチを作成して、パッチを共有することができます。これは非常にうまく機能していますが、2 つの問題が残ります。
1 つの問題は、バックアップの問題です。確かに、ほとんどのコード ベースはバックアップされています。リポジトリのクローンを持つすべてのマシンには、ほとんどのコードがあります。ただし、誰かが 1 日のうちに書いたコードは、dev にマージしてプッシュするまでバックアップされません。彼らが取り組んでいるタスクが重要である場合、価値のあるマージとプッシュが行われるまでに数日かかる可能性があります。この作業中のコードが中央の安全な場所にバックアップされていることを確認するにはどうすればよいでしょうか? Git 以外のバックアップ ソリューションを使用するだけですか?
2 つ目の問題は、従業員の進捗状況の監視の問題です。マネージャーは、開発者が毎日どのようなコードを書いたかを確認できるようにしたいと考えています。何も押し出さなかった日が買いに行くと、一日中何もしなかったように見えます。コミット、マージ、およびプッシュの準備ができていないコードをコミットおよびプッシュすることを強制しない、毎日の作業を示す何らかの方法が必要です。
私たちが検討した解決策の 1 つは、作成するローカル ブランチごとに中央レポにリモート ブランチを作成することです。これはおそらく機能しますが、古い未使用のブランチを定期的に削除したとしても、非常に雑然とした混乱になります. また、それらすべてを管理するのは多くの余分な作業です。
Git ワークフローを中断することなく、これらのビジネス要件を満たすにはどうすればよいでしょうか?