55

通常、特定の Java プロジェクトには Eclipse を使用しますが、最近、そのプロジェクトを NetBeans にインポートして、そのダイアログ構築機能を使用しました。

おそらくこれについては後で説明するので、NetBeans プロジェクト ファイルをバージョン管理に格納したかったのです。ただし、「自分の」ファイルと「プロジェクト」のファイル、つまり、自分の設定が別のユーザーの設定と競合するファイルをコミットしたくありません。

NetBeans は、最上位のプロジェクト領域に次の構造を作成しました。

nbbuild
nb-build.xml
nbproject
    <various files>
    configs
    private

明らかnbbuildにビルド出力なので、それは入りません。nb-build.xmlほとんどのnbproject. ただし、nbproject/privateそれは「私のもの」であることを示唆しています。「configs」をのぞいてみると、それが私のものなのかプロジェクトなのかわかりません...

誰にもいくつかのガイドラインがありますか?

4

5 に答える 5

57

プロジェクトファイルとバージョン管理に関するNetBeans ナレッジベースの記事では、NetBeans プロジェクトファイルについて説明し、どのファイルがプロジェクト固有 (つまり、バージョン管理を介して共有できる) で、どれがユーザー固有であるかについて大まかにアドバイスしています。

バージョン管理に関するセクションは次のとおりです。

プロジェクトがバージョン管理システムからチェックアウトされている場合、build(またはnbbuild)、dist(またはnbdist)、およびnbproject/privateフォルダーをそのバージョン管理システムにチェックインしないでください。

プロジェクトが CVS、Subversion、または Mercurial バージョン管理システムの下にある場合、プロジェクトのインポート時に、これらのディレクトリに対して適切な「無視」ファイルが作成または更新されます。

無視nbproject/privateするnbproject必要がありますが、バージョン管理システムにチェックインする必要があります。nbproject最初にプロジェクトをインポートしなくても、他のユーザーが NetBeans でプロジェクトを開くことができるようにするプロジェクト メタデータが含まれています。

于 2009-08-12T17:32:37.697 に答える
19

ある意味で、トーマスとピーターカルドナの両方が正しいことがわかりました。NetBeans では、ソース コードやドキュメントのみをインポートすることをお勧めします。ああ、nbprojectフォルダーですが、*nbproject/private** フォルダーではありません。

Eclipse プロジェクトのインポートに関する NetBeans ナレッジベースの記事から:

バージョン管理に関する考慮事項

プロジェクトがバージョン管理システムからチェックアウトされている場合、ビルド (または nbbuild)、dist (または nbdist)、および nbproject/privateフォルダーをそのバージョン管理システムにチェックインしないでください。

プロジェクトが CVS、Subversion、または Mercurial バージョン管理システムの下にある場合、プロジェクトのインポート時に、これらのディレクトリに対して適切な「無視」ファイルが作成または更新されます。

nbproject /privateは無視する必要がありますが、nbprojectはバージョン管理システムにチェックインする必要があります。 nbprojectには、他のユーザーが最初にプロジェクトをインポートしなくても NetBeans でプロジェクトを開くことができるようにするプロジェクト メタデータが含まれています。

于 2009-08-25T12:26:52.527 に答える
2

Netbeans 6.8でテストしたように、リポジトリを介して配布する必要があるのは、、およびメインのmakefile(dirの親dirにある、事前/事後のターゲット定義を持つproject.xmlカスタマイズconfigurations.xml可能なファイル)のみです。他のすべてのファイルは、Netbeans( 、、all、)'nbproject'によって自動的に(再)生成されます。明らかに、「プライベート」ディレクトリも無視する必要があります。Makefile-impl.mlMakefile-variables.mlMakefile-$CONFPackage-$CONF.bash

于 2009-12-20T01:09:22.797 に答える
2

なし。

リポジトリにチェックインする必要があるのは、自動的に生成されないソースファイル、ビルドスクリプト、およびドキュメント(たとえば、JavaDocやDoxygenなどのツールの出力)のみです。プロジェクトファイル、バイナリ、生成されたドキュメントなどはチェックインしないでください。

その理由は2つあります。まず、他の開発者のプロジェクト設定を自分のプロジェクト設定で上書きしたくない。第二に、他の開発者はあなたと同じIDE(またはIDEさえも)を使用していない可能性があるため、ビルド(プロジェクトまたは関連ドキュメント)またはプロジェクトの実行に必要な以上のものを開発者に提供しないでください。

于 2009-08-12T17:01:02.080 に答える