web-dev-qa-db-ja.com

コマンドラインからTortoiseSVNを使う

コマンドラインのSVNオプションを使いたい。 TortoiseSVNを使用していますが、いくつかのコマンドを実行しましたが、次のようなエラーメッセージが表示されます。

'svn'が内部コマンドまたは外部コマンドとして認識されていません

コマンドを使いました

svn checkout [-N] [--ignore-externals] [-r rev] URL PATH

私は環境変数か何か他のものを追加するべきだと思います。

コマンドラインからTortoiseSVNを使うにはどうすればよいですか。

226
Night Walker

デフォルトでは、TortoiseSVNには常にGUI(グラフィカルユーザーインターフェース)が関連付けられています。しかし(バージョン1.7以降の)インストーラでは、 "コマンドラインクライアントツール"オプションを選択できるので、コマンドラインからsvnコマンド(svn commitやsvn updateなど)を呼び出すことができます。

これがインストーラの「コマンドラインクライアントツール」オプションのスクリーンショットです、それを選択することを確認する必要があります:

How-to-install-TortoiseSvn-CommandLineTools

428
AnneTheAgile

TortoiseSVNにはTortoiseSVN GUIの自動化に使用できるコマンドラインインターフェースがあり、通常のSubversionのものとは異なります。

TortoiseSVNのコマンドラインオプションに関する情報はドキュメントにあります。 付録D. TortoiseSVNの自動化 。ここで働く主なプログラムはTortoiseProc.exeです。

しかし、一番上にあるメモにはすでに次のように書かれています。

TortoiseSVNはGUIクライアントなので、この自動化ガイドではTortoiseSVNダイアログを表示してユーザー入力を収集する方法を説明します。入力を必要としないスクリプトを書きたい場合は、代わりに公式のSubversionコマンドラインクライアントを使用してください

もう1つの選択肢は、Subversionバイナリをインストールすることです。 Slik SVN は素晴らしいビルドです(そしてCollabnetのような登録は不要です)。 TortoiseSVNの最近のバージョンでは、インストールを選択した場合、コマンドラインクライアントも含まれています。

126
Joey

TortoiseSVN GUIを既にインストールしていてコマンドラインツールにアップグレードする方法を考えていない場合は、以下の手順に従ってください.

  1. Windowsの[コントロールパネル]→[プログラムと機能](Windows 7+)
  2. TortoiseSVNを見つけてクリックします。
  3. 利用可能なオプションから[変更]を選択します。
  4. それ以上のステップのためのこのイメージを参照して下さい。

    TortoiseSVN Command Line Enable

  5. コマンドラインクライアントツールが完了したら、コマンドプロンプトを開き、svn helpと入力してインストールが成功したことを確認します。

74
Devendra Vaja

コマンドサポートを使用するには、次の手順に従ってください。

  1. 環境変数でパスを定義します。

    • 'システムのプロパティ';を開きます。
    • タブ[詳細設定]をクリックして、[環境変数]ボタンをクリックします。
    • [システム変数」セクションで[ Path ]オプションを選択し、[ edit ]をクリックします。
    • TortoiseProc.exe fileへのパスを含む変数値を追加します。次に例を示します。

      C:\ Program Files\TortoiseSVN\bin

  2. TortoiseProc を登録しているので、TortoiseSVN のドキュメント に従って使用できます。

    例:

    TortoiseProc.exe/command:commit /path:"c:\svn_wc\file1.txt*c:\svn_wc\file2.txt "/ logmsg:"テストログメッセージ "/ closeonend:0

    TortoiseProc.exe/command:update/path: "c:\ svn_wc \"/closeonend:0

    TortoiseProc.exe/command:log /path:"c:\svn_wc\file1.txt "/ startrev:50/endrev:60/closeonend:0

P.S 'TortoiseProc'の代わりに 'svn'のような分かりやすい名前を使用するには、 'svn.bat'ファイルを 'TortoiseProc.exe'のディレクトリに置きます。 svn.batの例があります。

TortoiseProc.exe %1 %2 %3
25
Warlock

私の解決策は、 DOSKEY を使用して、最も使用頻度の高いコマンドのエイリアスを設定することでした。

DOSKEY svc=TortoiseProc.exe /command:commit /path:.
DOSKEY svu=TortoiseProc.exe /command:update /path:.
DOSKEY svl=TortoiseProc.exe /command:log /path:.
DOSKEY svd=TortoiseProc.exe /command:diff /path:$*

Unixで。* rcファイルのようにコマンドプロンプトを開くたびに実行される.cmdファイルを設定する方法のヒントについては、Googleの「doskey persist」を参照してください。

8
SeanH

Svnを有効にしてTortoiseSVNインストールプログラムを再度実行するには、[変更](ユーザーが機能のインストール方法を変更することを許可する)を選択し、[コマンドラインクライアントツール]をインストールします。

8
Kiki

TortoiseSVNとApache Subversionコマンドラインツールの両方をインストールすることができます。私は通常、VisualSVNダウンロードサイトからApache SVNツールをインストールします。 https://www.visualsvn.com/downloads/

インストールしたら、Subversion\binをセットPATHに置きます。そうすれば、GUIを使いたいときにTortoiseSVNを使うことができるようになり、コマンドラインから使用するための適切なSVNコマンドラインツールが手に入ります。

3
David

SVNコマンドを取得するための私の修正はTortoiseSVNディレクトリから.exeと.dllファイルをコピーしてsystem32フォルダに貼り付けることでした。

TortoiseSVNディレクトリからコマンドを実行して、各コマンドに作業ディレクトリのパスを追加することもできます。例えば:

C:\Program Files\TortoiseSVN\bin> svn st -v C:\checkout

パスにビンを追加すると、ファイルを複製しなくても機能するようになりますが、私には機能しませんでした。

1
KC an EE

実際にsvn.exeコマンドラインクライアントを探していたときに、多くのTortoiseSVNユーザーが間違ったコマンドラインツールを使用しているという混乱があります。

コマンドラインからTortoiseSVNを使うにはどうすればよいですか。

svn.exe

コマンドプロンプトからSubversionコマンドを実行したい場合は、 svn.exe コマンドラインクライアントを実行する必要があります。 TortoiseSVN 1.6.x以前のバージョンにはSVNコマンドラインツールは含まれていませんが、最近のバージョンには含まれています。

TortoiseSVNをインストールせずにSVNコマンドラインツールを入手したい場合は、 SVNバイナリ配布ページ をチェックするか、 VisualSVNダウンロードページ から最新バージョンをダウンロードしてください).

システムにSVNコマンドラインツールがインストールされていても、エラー'svn' is not recognized as an internal or external commandが発生する場合は、環境変数%PATH%を確認してください。 %PATH%はSVNツールディレクトリへのパスを含まなければなりません。 C:\Program Files (x86)\VisualSVN\bin

TortoiseProc.exe

svn.exeとは別に、TortoiseSVNにはコマンドプロンプトから呼び出せるTortoiseProc.exeが付属しています。ほとんどの場合、このツールを使用する必要があるのはnotです。GUIの自動化にのみ使用する必要があるからです。 TortoiseProc.exeはSVNコマンドラインクライアントに代わるものではありません。

1
bahrep

しばらくして、私はこの回避策を使用しました...

(.batファイルに)

SET "CHECKOUT=http://yoururl.url";
SET "PATH=your_folder_path"

start "C:\Program Files\TortoiseSVN\bin" svn.exe checkout %CHECKOUT% %PATH%
1
jorgesimoes

Joeyが指摘したように、TortoiseSVNには独自のコマンドライン構文があります。残念ながら、あなたがsvnコマンドに慣れていて、現在の作業ディレクトリを無視しているのであれば、それは非常に醜いです。スクリプトを除いて、それはあまり使用できません。

私はtsvnコマンドラインの構文をできるだけ厳密に模倣し、それに応じてTortoiseSVNを呼び出す小さなPythonプログラム(svn)を作成しました。したがって、通常のコマンドラインツールを呼び出すこととTortoiseSVNを呼び出すことの違いは、最初はtという小さな文字になりました。

私のtsvnプログラムはまだ完成していませんが、すでに役に立ちました。それはcheeseshopで見つけることができます( https://pypi.python.org/pypi/tsvn/

1
Tobias

「SVN command line tools」を選択すると、このようになります。

Enter image description here

0
Alvin567