15


4

EclipseプロジェクトをSVNにチェックインする

eclipseで作成したDynamic Web Projectをsvnにチェックインしたい。 チェックインする必要があるファイルとチェックインしないファイルを誰かに教えてもらえますか? 新しいプロジェクトウィザードを使用してプロジェクトをチェックアウトして、ダイナミックWebプロジェクトを再度作成できるようにするという考え方です。 より具体的には、私がプロジェクトに持っているファイル/ディレクトリです — --

  • src

  • Webコンテンツ

  • 造る

  • dist

  • build.xml

  • 。プロジェクト

  • .classpath

  • 。設定/

ビルドディレクトリは、明らかにチェックインすることになっていない。 他のものはどうですか? 私はすべてを推測しています。 ファイルもチェックインしないでください。 誰かがこれを確認できますか? このdistディレクトリとは何ですか .settings directory?

また、Eclipseはサーバー情報(tomcat)をどこに保存しますか? 私もチェックインしたくありません。

編集:

もちろん、最初にビルドディレクトリ以外のすべてをチェックインしました。 Eclipse内からプロジェクトをチェックアウトしたとき、.projectはあるが、Eclipseは動的WebプロジェクトではなくJavaEEプロジェクトなどを作成していたため、新しいプロジェクトを作成するように促されませんでした。 他の誰かがこの動作に遭遇しましたか?

  • 編集2 **

それを見つけた! 私は以下をチェックインするべきではないことが判明しました-

  • 。プロジェクト

  • 。設定/

  • .classpath

これら3つが削除されると、新しいプロジェクトウィザードは期待どおりに動作し、すべて問題ありません。

4 Answer


13


`.classpath / .project / .settings`をチェックインすると、プロジェクトがEclipse固有になります。 「Netbeans」または「IntelliJ」で作業する開発者はどうですか? IMOでは、プロジェクトをIDEに依存せずに簡単にセットアップできます。

私は通常Mavenビルドに行きます。 pom.xml`はすべての必要な依存関係を指定し、 mvn eclipse:eclipse`は `.classpath / .project`ファイルを生成します。

`.settings`ディレクトリにはローカル設定(使用するJavaバージョンなど)が含まれています。 IMOこれをチェックインするのは役に立たない。 Maven2 pomを介してJavaバージョンのコンプライアンスを実施できます。

最後に、次のプロジェクトでは、最初のコミットの*前*にSVNに入れたくないファイルやディレクトリを「svn-ignore」することをお勧めします。 Maven2セットアップでは、 .settings、` .classpath`、 .project、` target`(Maven2のデフォルトの出力ディレクトリ)およびその他の生成されたもの(ログファイル、gfembedディレクトリなど)になります。 あなたの場合、「target」の代わりに「build」と「dist」を無視します。

RIGHT_MOUSE→ Team→ 'Add to svn:ignore'`でファイルまたはディレクトリを svn-ignore`できます(私はSubclipseプラグインを使用しています)。 無視の指示は、親ディレクトリに「svn-properties」として保存されます。 ディレクトリのプロパティは、「RIGHT_MOUSE→ Team→ Show properties」で表示できます。 値フィールドをクリックして、プロパティを直接編集することもできます。 各プロパティの後に行末があることを確認してください。

これらのファイルを既にコミットして削除したので、私の経験では無視はもう機能しません。 どういうわけか、SVNリポジトリにチェックインされた生成済みファイルを正常に無視することができませんでした。彼らはゾンビのようで、常に死者から戻ってきます。 SVNリポジトリでエントリを物理的に削除することでこれを達成できるかもしれませんが、私は一度もやったことがありません。


11


私たちの場合、リストで言及したすべてをチェックインしましたが、 .settings/.

.classpath`と .project`をチェックインすると、ユーザーはプロジェクトをすばやくチェックアウトし、新しいコンピューターでEclipseを起動して作業を開始できます。別の方法は、プロジェクトを手動で構成し、すべてのjar依存関係を苦労して追加することです(antを使用する場合)。 多くのオープンソースプロジェクトがこれを行います。

thisを読んで、熟考すべきいくつかの本当に良いポイントがあります。


2


良い質問…​ 私たちの多くは、IDE関連のファイルをチェックインするかどうかのジレンマに陥っています。 私は通常、Eclipseの.classpathをチェックし、Eclipse変数を使用して、チームが変数値を変更するだけで機能することを確認します。 また、プロジェクトをチェックインして、チームがワークスペースに新しいプロジェクトを作成する必要がないようにします。


0


project、.settings /、dist、およびbuildは省略します。

ハードコードされたパスの代わりに変数を使用する場合、.classpathを残すことができます。 これは便利なので、プロジェクトをチェックアウトするたびにクラスパスを再構築する必要はありません。