2011-09-20 15 views
3

リビジョン管理に関するwikipedia articleの記事を読む際に、あいまいに定義されているような用語を見つけましたが、実際にどのように使用/適用されているのか不思議でした。具体的に:いくつかのSCMの曖昧さ

  • "メインライン" 対 "ベースライン"
  • "支店" のMavenやIvyのような "ストリーム"
  • アーティファクトレポVS "チェックアウト" "更新"
  • VS "ベンダー" フォルダ(対)

私は文脈上の学習者です。あなたが与えることができる具体的な例は、電球の操作性を向上させるのに役立ちます。

最後の1に関して

、私は何を意味することは、このです:vendor/がする場所です

svnrepo/ 
    someProject/ 
     trunk/ 
     branches/ 
     tags/ 
     vendor/ 

:少なくともsvnで、のVCのプロジェクト構造を持つようにかなり標準的である

あなたの設定が依存する外部/サードパーティの依存関係を置くあるいは、開発者がMavenやApache Ivyなどのツールを使用して、SFTPサーバーなどのリポジトリとの間でアーティファクト(JARなど)をプル/パブリッシュすることを確認しました。 したがって、サードパーティの依存関係をいつあなたのSCMにvendor/の下に置くのですか?これらの依存関係はいつあなたのMaven/Ivyリポジトリに入れますか?

これらの項目のいずれかを明確にしていただきありがとうございます。

答えて

1
  • 「ベースライン」対「メインライン」:
    第1項は、レコードのコードの進化、生産に見られるように、通常、1つの枝の特別な種類です。 this chapterを参照してください。
    第2項は(コンポーネントのすべてのファイルに設定され、ファイルの一貫したセットをIE)のラベルについてです

  • 「ストリーム」対「支店」:
    支店あなたは、リストを持っている(何の階層構造を持っていませんどのブランチからどんなブランチにもマージします)。ストリームには階層構造があり、とりわけmerge workflowの定義が可能です。

  • "Checkout"と "Update"
    Checkoutはファイルの特定のバージョンを照会し、ディスクにコピーします。
    更新は、ディスク上のすべての要素が現在の選択ルールに対して最新のものであることを確認します。 (Mavenのかアイビーのような)「アーティファクトレポ」 対


  • 「ベンダー」フォルダアーティファクトのレポは、枝を差分をマージするなどのバージョン管理機能を提供していません。
    ベンダーは、VCS内の専用ブランチです(と私の意見では避けるべきである:binaries are not welcomed in a VCScertain reasonsのためにしない限り)ので

あなたがベンダー/下にSCMで、サードパーティの依存関係を入れないとき、およびいつMaven/Ivyリポジトリにこれらの依存関係を入れますか?

あなたがサードパーティのライブラリのために必要な設定(ラベルのすなわちリスト)を記録する(例えば)のみpom.xmlをversionning、VCSの外のベンダーLIBSを維持しようとすべきです。

+0

恐ろしい!ありがとうVonC! – IAmYourFaja