1

Java プロジェクトで Eclipse Indigo の SVN にひどい問題があります。

私は趣味でもプロのプログラマーでもありませんが、重大なプロジェクトにとってバージョン管理システムがいかに重要であるかを聞いたことがあります。

今、私は何をしようとしてもコミットできないことに気づきました。何をするかによって、さまざまなエラーが発生します。

この問題は、[プロジェクト] > [プロパティ] > [リファクタリングの履歴] の [プロジェクトのリファクタリング履歴をワークスペースではなくプロジェクト フォルダーに保存する] チェックボックスをオンにしたために発生したと思われますが、よくわかりません。しかし、それを行ったので、「svn: Path '.settings' not present」というエラーが表示されました。.settings/org.eclipse.ltk.core.refactoring.prefs のチェックボックスをオフにして、もう一度試しました。今回は、コミットを試みたときに「パス 'gamecore' が存在しません」という別のエラーが発生しました。(「gamecore」はプロジェクトのルート レベルのパッケージであり、より適切な場所に移動できるようになるまで、ほとんどのクラスをここに配置します。)

変更したプロジェクトの設定をいじったり、コミットしようとしたときにいくつかのファイルのチェックを外したりして、いくつかの順列を試しました。すべて失敗しました。

必死になって、変更したソース ファイルをテキスト ファイルにカット アンド ペーストし、以前のバージョンに戻し、古いバージョンの上に新しいバージョンをカット アンド ペーストしました。今回は「svn: File '/Space Game/.refactorings' is out of date」になりました。

だから私は何をしてもコミットできない立場にいます。この時点で、リポジトリ全体を消去し、ワークスペースからインポートすることを検討しています (リポジトリに重複があると考えて、以前に誤ってプロジェクトを削除したときに行ったことです)。

発生したエラーについて Web を検索しましたが、見つかったすべてのスレッドは、バージョン管理について私が持っているよりもはるかに多くの知識を持っていることを前提としているようです。ほとんどの場合、アクセスできない bash シェル コマンドが含まれています。

私の質問は次のとおりです。1) これは最善の行動ですか? 2) 他に劇的ではない回復方法はありますか? 3) このエラーの再発を防ぐにはどうすればよいですか?

Subversive SVN Connectors 2.2.2、Subversive SVN Team Provider 0.7.9、および SVNKit 1.3.5 Implementation 2.2.2 で Eclipse Indigo を使用しています。

4

1 に答える 1

1

これは、Eclipse メタデータをソース管理にチェックインし、それらの設定を変更して移動したためです。

  1. そのため、最初に更新を行ってメタ ファイルを元に戻します。svn コンソールを見ると、次のように表示されます。Restoring FILENAME
  2. それらを元に戻し、プロジェクトがまだメタデータを別のフォルダーに配置するように設定されていると仮定すると、それらに対して svn delete を実行して削除をコミットできます。
  3. すべての Eclipse メタデータで svn:ignore を設定します。
    • 。事業
    • 。設定
    • .buildpath
    • .リファクタリング

もし私があなただったら、Eclipseを閉じて、コマンドラインからこれをすべて実行して、混乱しないようにします.:

cd /path/to/project/root
svn up
svn rm .project .settings .buildpath .refactorings
svn commit .project .settings .buildpath .refactorings -m "Deleting eclipse metadata."
svn propedit svn:ignore .
# this will open an editor ignored files are one per line  so your file should look like
# the following without the "#" signs
#
# .project
# .settings
# .buildpath
# .refactorings

svn commit . -m "Adding ignores to eclipse metadata files."
于 2012-06-23T20:53:15.293 に答える