2013-09-29 10 views
9

私はGitと組み合わせてMavenを使う会社で仕事を始めました。私は前にMavenと仕事をしていないし、私の質問があまりにも愚かでないことを願っています。 Gitと組み合わせてMavenを使うべきですか?私が読んだところからMavenにはローカル、セントラルがあり、それが依存関係を見つけるためのリモートリポジトリを持つことができます。これにより、プログラマーのチームが同じコードで一緒に作業できるようになります。 Gitの目的は何ですか? Mavenだけで、Gitの助けを借りずにチームでプログラムすることは可能でしょうか?MavenとGitの組み合わせはなぜですか?

答えて

12

私はそれだけのMavenで動作するように可能だろうと思います。それはまったく恐ろしいことではないかもしれません。しかし、Mavenはのリリースを配布するためのシステムです(たとえスナップショットであっても何でも)。これは、バージョン管理ソフトウェアとは全く異なるツールです。私はMavenがgitのようなDVCSシステムの「バージョン管理」の部分を持たない「分散」部分だと言うことができると思います。

実際のバージョン管理でできることa lot of stuff Mavenは、マージ、差分、コミットログなど、直接サポートしていません。私はそれが可能であることを確信しています Mavenの上に実際の、完全に機能したバージョン管理システムを、適切なプラグインを使ってビルドすることは確かですが、それは非常に使いづらいかもしれません。 gitのようなものはすでにすべてこれを行い、最初からそれを行うように設計されているので、Mavenが行うことができる何らかのハッキングよりも優れているので、誰も実際に試したことはないでしょう。

私は、共有フォルダ、命名規則、手動ログファイル、開発者間の同期のためのIMグループチャット(ircチャンネル)、バージョン比較ツールなどを比較するためのバージョン管理などができることを意味します。使用するのが恐ろしいし、 "壊す"ことも非常に簡単です(この場合は、プロジェクト全体とすべての履歴を壊しやすい)。バージョン管理システムの進化は長く続いています。たとえば、hereなどの情報を読むことができます.Mavenを起動すると、30年前に戻るようになります。

2

Mavenを使用して、プロジェクトの依存関係がうまくMavenとして通知する他の開発者を必要としない依存関係の追加など共同開発のための良いですpom.xmlで定義されて自動的に依存関係をダウンロードすることで、依存関係自体を処理します。

Gitはプロジェクトのコード変更を追跡するのに非常に優れた分散バージョン管理に使用されます。

基本的に、これらの2つのツールは共同開発を容易にします。しかし、これはちょうどクラッシュコースの説明ですが、多くの利点があります。

18

まあMavenとgitのは、異なる目的のために、次のとおりです。

  • GITは、アプリケーションのソースコード

  • MAVENは、依存関係の管理のために使用されて保持しています。これは、アプリケーションのバイナリ依存関係を保持します。また、使用されているIDEの抽象化も作成されます。ある開発者はeclipseと別のintellijを使用することができます。プロジェクトはコマンドラインでビルドすることもできます。

関連する問題