2011-03-03 8 views
2

私はSubversionを使用し、私はトランク、タグ、ブランチのコンベンションに固執します。私はのために努力リポジトリ内のすべてのタグを保持する必要がありますか?

使用パターンが緩く以下の通りです:トランク

    1. スタートデプロイ解除
    2. トランクからいくつかの作業
    3. タグ解除を行うから、機能ブランチを作成しますタグ
    4. がでブランチをマージ作業を行います
    5. は、このパターンを考えると3

    に進みトランクは、1時間にわたるタグのかなりのコレクションを構築します。これらのタグを非常に長く保持していますか、または本番環境にないタグを削除する方針ですか?私の気持ちは、最終的に古いタグを "撤去"し、歴史が必要な場合はトランクの履歴と保存されたタグに依存しますが、使用されているポリシーは何か(特にSubversionでは)意味があります。あなたがそれらを削除することができますもちろん

  • +0

    タグを保持しているかどうかにかかわらず、履歴を保存していることはわかっていますか? –

    答えて

    1

    私の哲学は、私は通常、タグをロックすることで、コードがリリースされた後。ブランチのソースコードがメンテナンス中でなくなったら、タグを削除します。したがって、通常、これは、タグのバージョンがもはや「フィールド内」ではないことを意味します。

    はしかし、私は明確にする必要があることの2つの仮定ここにある - 機能により、リリースによる

    1. 私は通常、ブランチ/タグ、ありません。私が実験的な機能のためのブランチを作成する場合、私は通常、トランクにうまくマージされた後にそのブランチを削除します。支店の仕事はほとんどの場合、私は他人を怒らせるようなことに取り組んでいる間に、私はトランクへの変更を隔離することができます。
    2. 私はモバイルデベロッパーであるため、私のリリースは非常に迅速に変化します。だから、私が新しいコードをリリースすれば、それが引き継ぐ傾向があるので、「リリースがもはや現場になくなったとき」と言うのは簡単です。何年も前からコードがサポートされている開発者にとっては、はるかに難しいことです。

    「このブランチでどのくらいの期間コードをサポートする予定ですか?」と思っています。

    1

    は - しかし、それらを一覧表示する際の出力を制限する他の方法があります。 git-flowをチェックしてください。トランクにマージを使用して、タグに頼らずに展開されたものを表示することができるはずです。あなたがマージした側が、マージの最初の親がコミットすることに注意してください。最近の履歴検査/操作では、タグが役立ちます。

    SVNとGitの違いを覚えておいてください。 Gitはスナップショットに基づいています.SNNのようなURLのようなものではありません。すなわち、「フリーズ」ブランチ - -

    関連する問題