2011-10-20 17 views
2

ハードドライブから10分ごとに新しいファイルをコミットする必要があるperlスクリプトを作成しています。チェックアウトや作業コピーなしのSVNコミット

コミットを実行したいプロジェクトの作業コピーを持たずにコミットを実行できるかどうか疑問に思っていましたか?コミットを実行する前に、そのプロジェクトの作業コピーをハードドライブにチェックアウトする必要がありますか?

答えて

4

それはこのディレクトリは多くのコンテンツを持つ他の多くのファイルが含まれている場合は、直接リポジトリ内の特定のフォルダに

http://svnbook.red-bean.com/en/1.5/svn.ref.svn.c.import.html

+0

ありがとうございました。manoj..svn importが正常に動作しています。 – vishalkbhatt

+0

@vishalkbhatt:これがあなたの質問に答えるなら、それを受け入れるべきです。 (答えの投票カウンタの下のフックをクリックすることで) –

6

それをインポートするsvn importコマンドを使用することができ、新たなファイルである場合は、解決策でしょうshallow checkoutを実行する必要があります。

svn checkout <url> <target> --depth empty 
cd <target> 
svn up <yourfile> 

編集したファイル...

svn commit <yourfile> 

あなたが転覆の古いバージョンを使用している場合、あなたはおそらく、あなたがin this post探しものを見つけるでしょう。

+1

-1しかし、** svn importを使って**可能です。 manojldsの答えを参照してください。 –

+1

OK、私は 'svn import'は新しいファイルに対してのみ働いていました。しかし、私はそれをチェックしていたはずです。 – Antoine

+0

はいantonio ... svnのインポートが正常に機能しています.... thnks – vishalkbhatt

2

あなたはすでにあなたの要件を解決するためにSubversion Perl Bindingsを使用することができます。 CPanをご覧ください。 1つのファイルに対してこれを行うことが可能でなければなりません。 SVN Modulesのドキュメントを見てくださいSVK(ソースコードを見てください)が好きかもしれません。

+0

私はsvnのインポートが今すぐ動作しています。唯一の問題は、スクリプトはバックグラウンドで実行する必要がありますが、私はコマンドプロンプトウィンドウを非表示にする方法を知らないスクリプトは、SVNのインポートコマンドを実行してコミットを実行している..どのようにアイデアの人が隠す方法です??? – vishalkbhatt

+0

その後、Windowsで作業しています。 startコマンドのパラメータはありますか?または、cmd/batファイルでこれをやっていますか? – khmarbaise

+0

私は次のようにして問題を解決しました: 'code use Win32 :: OLE; Win32 :: GUIを使用します。 $ hw = Win32 :: GUI :: GetPerlWindow(); Win32 :: GUI :: Hide($ hw); ' – vishalkbhatt

0

SubversionリモートAPIを使用してコミットできます。ここにはJava言語用のexampleがありますが、他の言語(C、Perlなど)では同じAPIが使用されています。 Perl bindingsの例のSVNRepositoryクラスは、SVN :: Raに対応します。

関連する問題