web-dev-qa-db-ja.com

'Un-SVN'作業コピー

作業コピーであるフォルダがあります。このフォルダからすべてのSVN機能を削除するにはどうすればよいですか?私がこれを行う理由はあります。どういうわけか、サイトのすべての作業コピーが含まれている私のマスターフォルダーは、どういうわけかそれ自体が作業コピーになっているため、それ自体に作業コピーがあります。

では、フォルダからバージョン管理を削除する簡単な方法はありますか?

47
Chris J Allen

その中のすべての「.svn」フォルダを削除するだけです。それでおしまい。

32
Gregor

svn exportは、探しているコマンドです。管理されたファイルのセットを管理されていない場所にエクスポートして、それを使用できます。

47
Robert Elwell

* nixのようなツールを使用していた場合:

find . -type d -name .svn -print0 | xargs -0 rm -fr
23
Andy Lester

TortoiseSVNを使用している場合は、作業コピーのルートフォルダー内を右クリックして[エクスポート...]をクリックするだけです。コミットされていない変更がある場合でも機能します。

同様に、リポジトリからエクスポートを実行するだけで、.svnフォルダーは作成されません。

別の簡単なアプローチは、前述のようにすべての.svnフォルダーを削除することです。

13
Esteban Brenes

すべての.svnフォルダーを手動で削除するか(すべてのサブフォルダーについても同様に削除してください)、または Jon Gallawayのシェルコマンド のような単純なユーティリティを使用できます。

4
Ben Hoffstein

Windowsクライアント「TortoiseSVN」には「エクスポート」機能があります。エクスポートでは、「。svn」フォルダが含まれていない別のフォルダにコピーが作成されます。バージョン管理外のファイルを含めるオプションを使用して、リポジトリまたはローカルコピーからエクスポートできます。

4
Marko Dumic

これはどう:

for /f "tokens=* delims=" %%i in ('dir /s /b /a:d ".svn"') do rd /s /q "%%i"

すべての.svnフォルダーを再帰的に削除するには-

(エクスポート機能がオプションではない場合、リポジトリにアクセスできないなど...)

4
Scott Kramer

TortoiseSVNには、Subversionバインディングなしでファイルをエクスポートする機能があります。リポジトリ(またはリポジトリ内のディレクトリ)を右クリックし、TortoiseSVNを選択して、エクスポートします。これを行う別の方法は、すべてのフォルダ内のすべての.svnディレクトリを削除することです。

3
Surgical Coder

以下は、Subversion作業コピーディレクトリからすべての.svnフォルダーを削除するWindowsバッチスクリプトです。

@echo off
rem cleanup .svn subdirs

setlocal enabledelayedexpansion

rem change to directory that this batch script resides in

if "%~1"=="" (
    echo Usage: svncleanup svn_working_copy_dir
    exit /b 1
)

echo cleaning up .svn subdirs in "%~1" ...

for /R "%~1" %%I in (.svn) do rmdir /Q /S "%%I" > NUL 2>&1
3
sakra

Windowsエクスプローラを使用して ".svn"(作業コピーの先頭から開始)を検索し、見つかったすべてのフォルダを選択して削除します。

2
Mike

TortoiseSVNでは、フォルダーを右クリックしてドラッグアンドドロップし、[SVN Export All to here]コマンドを選択できます。

2
Michel

亀と一緒にその場でエクスポート

上記の提案をすべて読んだとき、ソースファイルが3GBで、many.svnフォルダーが含まれているので、私はしのぎを削っていました。

Rクリックのコンテキストメニューから[エクスポート]を選択し、[コピーを置く場所]ダイアログが表示されたら、同じフォルダー自体を選択を選択します。 OK。 Violaのすべてのソース管理の残骸は(再帰的に)瞬時になくなります。

2
radarbob

.svnサブフォルダーを削除できませんか?

私の知る限り、SVNはリポジトリへの接続に関するすべてをこのサブフォルダーに保存します(少なくともWindowsでは)

1
Sam

他の人が言ったように、.svnフォルダーを削除すると、SVN機能そのフォルダーからが削除されます。再帰的に実行すると、WC全体が「SVNから外されます」。これは本質的にエクスポートコマンドが行うことです。 Tortoise、CLI SVNバイナリ、またはその両方の機能かどうかはわかりませんが、その1つでは、WCから文字通り.svnフォルダーを削除するだけのインプレースエクスポートを実行できることを思い出します。通常のエクスポートでは、バージョン管理されていない新しい場所にWCのコピーが作成されます。

1
rmeador