問題タブ [svnkit]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - SVNKit によるディレクトリ/ファイルのチェックアウト
チェックアウトが文書化されているwikiが見当たりません。理想的には、フォルダーだけでなく、ファイル「example/folder/file.xml」をチェックアウトしたいと思います...そして、アプリケーションが閉じたときなどに、このファイルへの変更をコミットできるようにします。どうすればいいですか?
java - マルチスレッド時のSVNKitの設定
SVNKitを使用して、さまざまなスレッドを使用して、多数のSVNリポジトリに並列に接続しようとしています。
オンラインでいくつかのコード例を見ると、SVNKitを使用する前に、静的メソッドを使用して初期化する必要があるようです。
明らかに静的メソッドは、マルチスレッド環境に関心を持っています。私の質問は:
- このようにSVNKitを並行して使用することは可能ですか?
- これらのセットアップメソッドをいつ呼び出す必要がありますか?ソフトウェアの最初で、スレッドごとに1回だけ、何ですか?
また、これらのメソッドを呼び出さなければならない理由を誰かが説明してくれたら嬉しいです。
java - SVNKitでディレクトリツリーをコミットできません
レガシービルドシステムのファイルを含むディレクトリがあります。このビルドシステムのタイムラインをSVNリポジトリに再作成したいと思います。
そのためには、各ビルドを取得し、そのすべてのファイルを抽出し、適切なディレクトリ構造に配置し、ディレクトリ構造全体をsvnにコミットし、ビルドごとにタグを作成する必要があります(簡単に識別できるようにするため)。今のところ、そのシステムからファイルを取得してディレクトリ構造に配置することができ、SVNKitを使用してそのディレクトリ全体をSVNに配置しようとしています(同期システム全体がJavaコードを使用するものであるため)。
だから、私がすることは
- を使用してすべての新しいファイルをsvnに追加する
SVNWCClient.doAdd(main.workDirectory, true, false, false, SVNDepth.INFINITY, false, false /* we only add files below this path */)
- 次に、を使用してディレクトリ全体をコミットします
SVNCommitClient.doCommit(changedFiles, false, null, commitProps, null, false, true, SVNDepth.INFINITY)
残念ながら、それはうまく機能しません...
実際、これらのメソッドを呼び出そうとするたびに、
TortoiseSVNを使用してこのフォルダーを見ると、SVNに追加するのは完全に「通常の」フォルダーのように見えることに注意してください...さらに、TortoiseSVnを使用してルートディレクトリとそのすべての子を最小の問題なしでコミットできます。それで、それは私がそれを機能させるために私のコードに変更することができる/すべきものですか?
java - SvnKit を 64 ビット Windows 7 で動作させる際の問題
SvnKit を 64 ビット Windows 7 で動作させるのに問題があります。シェルを開いて jsvn と入力すると...
指定されたパスが見つかりません。
何の道とは言いません。すべてのパスを確認したので、ランチャー スクリプトではありません。svnkit jar または依存 jar の 1 つにある必要があります。
これは 1.3.4.6888 スタンドアロン バージョンです。インストールした JRE は 1.6.0_22 です。
64 ビットの Windows 7 でこの問題が発生したことはありますか?
ランチャースクリプトを表示するように編集:
jsvn.bat ファイルから Java が呼び出されていないようです。
これがそのファイルの内容です...
そのため、どこかに不正なパスが存在し、スクリプトが java コマンドを呼び出すことはありません。エコーをオンにしてコンソール出力を観察し、Java コマンドを手動で入力すると動作します。
私は困惑しています。
java - Java Subversion ライブラリ
Subversion (SVN) 用の Java API を研究しています。以下の3つがあるようです。
- JavaHL - SVN プロジェクトの一部。比較的低レベルの API を提供します
- svnClientAdapter - Subclipse プロジェクトの一部。比較的高レベルの API を提供します
- SVNKit - 他の 2 つとは異なり、これは SVN プロトコルの 100% Java 実装を提供します。つまり、ネイティブ ライブラリをインストールする必要はありません。高レベル API、低レベル API、JavaHL の実装、およびその実装に SVNKit を使用するコマンドライン クライアントを提供します。
私はこれらの API を実際に使用した経験はありませんが、上記が正しいと仮定すると、SVNKit は明らかに勝者のように見えます。私は経験上、見た目が人を惑わす可能性があることを知っているので、これらのライブラリの 1 つまたは複数を実際に使用したことのある人からのフィードバックを求めています。上記で提案したように、SVNKit は暴走した勝者ですか、それともより良い選択がありますか。
答えは、API を使って何をするかによって異なると思います。(おそらく驚くべきことに)答えは、ファイルの追加、更新、削除、プロジェクトとリポジトリの作成、分岐など、ほとんどが書き込みです。
ありがとう!ドン
java - SVNKitを使用してSVNディレクトリの権限を変更する
私はSVNKitを使用してプログラムでSVNサーバーと対話しています。ある時点で、リポジトリディレクトリへのそれ以上の変更を防ぐ必要があります。私の最初のアイデアはロックを使用してこれを行うことでしたが、SVNロックが壊れやすい(そして盗むことができる)ことを発見しましたが、ディレクトリを変更できないようにする必要があります。フックスクリプトを作成することでロックを解除できないようにすることができることは知っていますが、これは展開を複雑にし、プラットフォーム固有の依存関係を導入します。
次のアイデアは、ロックダウンする必要のあるディレクトリのアクセス許可を変更することで、この問題を解決することです。VisualSVNサーバー管理コンソールを使用してこれを行うことはできますが、SVNKitAPIを介してこれを行う方法が見つかりません。この機能はAPIを介して公開されていますか?公開されていない場合、ディレクトリをロックダウンする別の方法はありますか?
ありがとう!
java - SVNKitを使用してSVNから抽出された誤った日付
SVNKitを使用してSVNサーバーからログを取得しています。SVNKitバージョン1.3.2を使用しています。
私が最近見ているいくつかの奇妙な問題を除いて、すべてがうまく機能しています。コミット日取得は、プログラムを実行しているシステムのタイムゾーンに変換されるため、オフセットが導入され、ログ(tortoise svnを使用)およびプログラムの出力に表示される時刻が変更されます。
私が欲しいのは、出力がSVNログに表示されるものと同じである必要があるということです。
java - ローカルチェックアウトなしでSVNKitを介して変更されたファイルをコミットしますか?
SVNKitを使用して、リポジトリからファイルのコンテンツを取得しています。コード内の内容を変更し、最初にファイルをチェックアウトせずに変更をコミットし直したいと思います。私はすでにWebを検索しましたが、ローカルファイルシステムへのチェックアウトが必要なソリューションのみが見つかりました。
誰かがそれをする方法を知っていますか?
svn - hudson svnkit SSL
Subversionでホストされているプロジェクト(またはジョブ)でHudsonCIサーバーを使用しています。SSL経由でSubversionサーバーに接続しています。
すべてが正常に機能しており、HudsonはSubversionから更新、ビルドでき、問題はありませんでした。
そしてちょうど今日、ハドソンは破壊に関する大きな変更をチェックするのをやめました。多くの変更がある場合、HudsonはSVNから更新を開始し、次のエラーが発生します。
エラー:https:// myserver:8443 / svn / myproject/trunkの更新に失敗しました
org.tmatesoft.svn.core.SVNException:svn:不良レコードMAC
svn:REPORTリクエストが'/ svn / CTPN /!svn / vcc/default'およびエラースタックで失敗しました
原因:javax.net.ssl.SSLException:com.sun.net.ssl.internal.ssl.Alerts.getSSLException(不明なソース)の不正なレコードMAC
そしてそれは10秒ごとに試行され、永遠に続きます。私たちが使用している2台のHudsonサーバーで同じ日に発生しました
小さな更新では機能しますが、大きな更新ではこのエラーが発生します
フィードバックをお願いします。
svn - SVNKIT を使用して SVN からリポジトリのコンテンツを取得する
svn で 2 つのリポジトリを比較したい。svn を使用して svn からコンテンツを取得し、ローカル ディレクトリを比較するプログラムを作成しようとしています。チェックアウトせずにsvnkitを使用してsvnからコンテンツを取得することは可能ですか? リポジトリ内の何も変更したくありません。画像などの一部の要素をダウンロードから除外することはできますか?