2011-10-18 17 views
0

私はDjangoプロジェクトで作業していましたが、いくつかのバージョンコントロールが必要であると判断しました。別のマシンでSVNサーバーを実行していて、そのコードをSVNリポジトリにインポートしたかったのです。私はUbuntuで開発しています。私のSVNサーバーはリモートOS   Xマシンです。Subversion import

開発マシンのDjangoプロジェクトに~/django_projects/myprojectを入れて、次のコマンドを実行しました:svn import svn+ssh://[email protected]/path/to/svn/repo。結果は、追加されたファイルの全体の束でした。

次に、いくつかのファイルを修正し、チェックインを試みました:svn ci

このコマンドでは、次のエラーメッセージが表示されます。svn: 'path/to/svn/repo' is not a working copy

どうしたのですか? SVNに自分のものをチェックインさせて、適切なバージョン管理ができるようにするにはどうすればいいですか?

答えて

2

svn importは作業コピーを作成しないためです。これを修正するには、次の手順を実行します。

  • 最初に修正ファイルをバックアップします。
  • 実行svn co --force svn+ssh://[email protected]/path/to/svn/repo/path/to/import /path/to/wcここで、path/to/wcは、作業コピーを作成するルートです。これは、作業コピーの場所として指定したパスにリポジトリ内のパスをチェックアウトします。 --forceパラメータは、リポジトリに存在するファイルがすでに作業コピーに入っていてもチェックアウトを続けます。それはあなたが意味するものを変更するためにされている修正されたファイルを確認する
  • 実行svn status /path/to/wcを示し、それらを上書きしません
  • 実行svn ci
+0

小さな点リモートのsvnリポジトリは、ローカルディレクトリとは異なる名前を持ちます。 SVN Coは、リポジトリと同じ名前のローカルディレクトリを構築しようとしています。 svn coをカスタムまたは既存のディレクトリ名にすることはできますか? – codingJoe

+0

**概要** svn checkout URL ... [PATH] **説明** リポジトリから作業コピーをチェックアウトします。 PATHを省略すると、URLのベース名が宛先として使用されます。複数のURLが指定されている場合は、それぞれPATHのサブディレクトリにチェックアウトされ、サブディレクトリの名前はURLのベース名になります。 –