1

Из-за сложной структуры SVN-хранилища некоторые внешние файлы не могут быть правильно извлечены из хранилища. Поскольку изменение структуры репозитория не является вариантом, я разработал сценарий, который выполняет итерацию внешних элементов и извлекает их «вручную», если необходимо (благодаря «экспорту svn»). Чтобы определить, действительно ли необходима эта операция, я выполняю 'svn info', предполагая, что она вернется отличной от 0, если файл не существует или не версионирован. Это было действительно поведение, полученное в host1 (SVN Client 1.6.17):

# Initially, the directory is empty
host1$ ls
host1$ svn update

Fetching external item into 'main.rbf'
svn: warning: '<REMOTE_SVN_LOCATION1>'
is not the same repository as
'<REMOTE_SVN_LOCATION2>'

At revision 18413.

# Although we do the update, the external item is not fetched,
# as it is a single file coming from a different repository
# (known problem)
host1$ ls
# The file is not present, and SVN info acts accordingly
host1$ svn info main.rbf
main.rbf:  (Not a versioned resource)

svn: A problem occurred; see other errors for details

# If we force the SVN export
host1$ svn export <REMOTE_SVN_LOCATION1> main.rbf
A    main.rbf
Export complete.
host1$ ls
main.rbf

# then SVN info detects it and acts accordingly
host1$ svn info main.rbf
main.rbf:  (Not a versioned resource)

svn: A problem occurred; see other errors for details
host1$

В host2 (клиент SVN 1.6.11) поведение «информации SVN» совершенно иное: независимо от того, существует ли файл (из предыдущего экспорта) или нет, ответ таков:

# Directory is empty
host2$ ls
host2$ svn info
Path: .
URL: <REMOTE_LOCATION>
Repository Root: ...
Repository UUID: ...
Revision: 18413
Node Kind: directory
Schedule: normal
Last Changed Author: ...
Last Changed Rev: 18326
Last Changed Date: ...

host2$ 

Есть ли причина объяснять это непоследовательное поведение? Как я могу обнаружить этот неверсионный файл в host2?

0