SVNを単独で使用するか、小さなワークグループで使用する - ワークフローアプローチ?

StackOverflow https://stackoverflow.com/questions/2942735

質問

私は数ヶ月間ウェブアプリケーションに取り組んできましたが、私たちは生産段階に近づいています。このプロジェクトで1〜3人で開発グループを拡大する時が来ました。

私はSVNとの作業に関するあまり経験はありませんが、それは明らかに大企業の大部分の選択であるため、SVNの長所は間違いなくコミット /チェック /チェックに費やした時間を上回ると推測していますアウトなど

ワークフローはSVNでもう少し複雑になっているようです。 O'Reilly MediaによるSubversionによるバージョン制御 そして、単独または少ない(1〜3人の)ワークグループで開発する際のバックアップ以外の理由でSVNを使用するのがやり過ぎであるかどうかはまだわかりませんか?

どうしますか?単独または小さなワークグループで作業中にバージョンコントロールを使用したワークフローは何ですか?

ありがとう!

役に立ちましたか?

解決

他のSCMのように、それは間違いなくのためです もっと バックアップより。

  1. 特定のリリースにタグを付けることができるため、リリースを構成するすべてのコードにわたってポイントを識別できます。
  2. ソリューションの新しいバージョンを開発しながら、リリースのバグ修正を管理する必要がある場合、さまざまな同時リリースのブランチを管理できます。
  3. 複数の開発者を管理し、SVNのマージ機能を使用して同時の変更を処理することができます。これにより、開発者はお互いのつま先を踏み込ませたり、互いの変更を上書きまたは消去したりしません。

私はSCMなしで自分で発展していません。他の開発者は言うまでもなく。それはあなたのツールボックスのコアツールであり、取得する価値があります au fait 遅かれ早かれ。

私のワークフローは何ですか?それはチームと使用されているSCMに依存します。

  1. SCMがそれをうまくサポートしている場合(例:GIT)、バグ/機能ごとにブランチを作成します。 SVNは分岐がそれほど暑くないため、これは適用されない可能性があります。
  2. チェックイン/マージします 定期的. 。これを頻繁に行わないと、コードベースは作業コードベースから分岐し、その後のマージがより困難になります。さらに、チームメンバーに自分がしていることを認識してもらいたいです。
  3. 私の連続統合プロセス(たとえば、TeamCity/CruiseControl/Hudosnなどの連続ビルドエンジンを使用)は、ビルド/テストをビルド/テストし、オプションでビルド/テストサイクルの成功にリリースをタグ付けします。
  4. 最終リリースのブランチを作成し、リリース後にメンテナンスのためにこれを解決します。

他のヒント

いいえ、それはやり過ぎではありません。バージョン制御はです 重要 プログラミングでは、それが単独であるかどうかに関係なく、小さなチームで、または大きなチームで。以前の改訂にいつでも戻ることができるため、「間違った」変更を行うことへの恐怖を取り除きます。コミットメッセージで変更が行われた理由を覚えています。一緒に変化したものを知っています。などなど

ブライアンの答えに追加することはあまりありません。代替品として、水銀、git、バザールなどの分散型ソース制御システム(DSCM)を見てみたいと思うかもしれません。私見は、彼らは小規模な開発者グループにぴったりであり、セットアップが非常に簡単ですが、それでも大きなプロジェクトに拡大することができます。

Joel Spolskyが書いたMercurialに関する優れた入門チュートリアルは、で見つけることができます http://hginit.com/.

repository layout
(ソース: hginit.com)

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top