私たちはSVNサーバー1.4(私は思う)を使用しており、クライアントはコマンドラインクライアントまたはTortoiseSVNのいずれかです。
コマンドラインクライアントは、コマンド「svninfo」でロック所有者を表示します。
TortoiseSVNでは、「プロパティ」コンテキストメニュー(「Subversion」タブ)でロックの所有者を確認できます。
svn status --show-updates
を使用して、ファイルのロックを検出します。次の例では、サリーはraisin.jpgにロックがあることを発見します。
$ whoami
sally
$ svn status --show-updates
M 23 bar.c
M O 32 raisin.jpg
* 72 foo.h
Status against revision: 105
ロックがわかったら、svn -info
を使用して、誰がロックを設定したかを見つけることができます。以下の「ロック所有者」に注意してください。
$ svn info http://svn.example.com/repos/project/raisin.jpg
Path: raisin.jpg
Name: raisin.jpg
URL: http://svn.example.com/repos/project/raisin.jpg
Repository UUID: edb2f264-5ef2-0310-a47a-87b0ce17a8ec
Revision: 105
Node Kind: file
Last Changed Author: sally
Last Changed Rev: 32
Last Changed Date: 2005-01-25 12:43:04 -0600 (Tue, 25 Jan 2005)
Lock Token: opaquelocktoken:fc2b4dee-98f9-0310-abf3-653ff3226e6b
Lock Owner: harry
Lock Created: 2005-02-16 13:29:18 -0500 (Wed, 16 Feb 2005)
Lock Comment (1 line):
Need to make a quick Tweak to this image.
TortoiseSVNのリポジトリブラウザ機能を使用すると、ファイルをロックしたユーザーを示すロック列があります。
ローカルの作業コピー-> TortoiseSVN-> repo-browserを右クリックします。
確認する手順:
ロックを決定するファイル/フォルダを右クリックします
TortoiseSVNオプション>>リポジトリブラウザに移動します
新しいウィンドウが開き、テーブルビューが表示されます
表のロック列には、誰がロックを持っているかが表示されます
次のPythonスクリプトは、すべてのロックとその所有者を示しています。
#!/usr/bin/python
# coding=UTF-8
# This tool shows who owns the locks in a Subversion repository
import sys
import subprocess
if len(sys.argv) > 1:
p = subprocess.Popen(['svn', 'status', '-u', sys.argv[1]], bufsize=1, Shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
else:
p = subprocess.Popen(['svn', 'status', '-u'], bufsize=1, Shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
(so, se) = p.communicate() # start command
lines = [x[21:].strip() for x in so.split('\n') if len(x) > 5 and x[5] == 'K']
for line in lines:
p = subprocess.Popen(['svn', 'info', line], bufsize=1, Shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
(so, se) = p.communicate()
details = [x[12:].strip() for x in so.split('\n') if x.startswith('Lock Owner')][0]
print '[%s] (%s)' % (details, line)
赤い本 セクション「ロックの検出」を確認してください。私はそれが答えを含んでいると信じています。
。auxファイルに関してもこの問題がありました。私の場合の解決策/問題は、1よりも深い深さを持つサブディレクトリは許可されないということでした。これを使用する場合は、tmpフォルダー内のサブディレクトリが存在している必要があります。例えば-> src->はじめに-> introduction.texには-> tmp->紹介-> introduction.aux******
下線付きのディレクトリが存在している必要があります。したがって、Subversion管理の場合は、tmpフォルダー(* .auxなし)ファイルのディレクトリ構造もコミットします。