2013-03-09 1 views
6

У меня возникли проблемы с фиксацией/обновлением из репозитория SVN, который я установил на другом сетевом диске (one of these) дома.Ankhsvn, интегрированный в Visual Studio 2010, не может подключиться к SVN-репо на сетевом диске

Я имею в виду хранилище при помощи URL:

file://mynetworkdrive/Documents/subversion/code/sln/trunk/MyWebsite/trunk/Home 

Когда я выбираю одно из обновления или Commit опции из контекстного меню Solution в VS 2010 я получаю диалоговое окно, отображающее исключение, показанное ниже :

enter image description here

SharpSvn.SvnRepositoryIOException: Commit failed (details follow): ---> SharpSvn.SvnRepositoryIOException: Unable to connect to a repository at URL 'file://mynetworkdrive/Documents/subversion/code/sln/trunk/MyWebsite/trunk/Home' ---> SharpSvn.SvnRepositoryIOException: Unable to open an ra_local session to URL ---> SharpSvn.SvnRepositoryIOException: Unable to open repository 'file://mynetworkdrive/Documents/subversion/code/sln/trunk/MyWebsite/trunk/Home' ---> SharpSvn.SvnSystemException: Can't open file '\\mynetworkdrive\Documents\subversion\code\sln\trunk\MyWebsite\trunk\Home\format': Logon failure: unknown user name or bad password. 
    --- End of inner exception stack trace --- 
    --- End of inner exception stack trace --- 
    --- End of inner exception stack trace --- 
    --- End of inner exception stack trace --- 
    at SharpSvn.SvnClientArgs.HandleResult(SvnClientContext client, SvnException error, Object targets) 
    at SharpSvn.SvnClientArgs.HandleResult(SvnClientContext client, svn_error_t* error, Object targets) 
    at SharpSvn.SvnClient.Commit(ICollection`1 paths, SvnCommitArgs args, SvnCommitResult& result) 
    at Ankh.Services.PendingChanges.PendingChangeHandler.<>c__DisplayClass1b.<Commit_CommitToRepository>b__19(Object sender, ProgressWorkerArgs e) 

Когда я первый установить это я мог общаться с репозиторием штрафа изнутри Визуальный Stu Dio.

Я могу просматривать содержимое сетевого диска с помощью проводника Windows.

Я могу использовать TortoiseSVN за пределами Visual Studio для обновления или передачи в мой репозиторий.

Однако, это боль, я хочу, чтобы интеграция Ankhsvn с Visual Studio была доступна для использования.

Кажется, что Visual Studio забыла имя пользователя и пароль, необходимые для доступа к URL-адресу. Я не могу найти способ заменить или принудительно выполнить запрос для учетных данных.

Я также изменил для запуска Visual Studio 2010 в качестве администратора, чтобы я мог работать с IIS 7, я задавался вопросом, связано ли это с этим?

ответ

4

Переписывая свой ответ со знанием комментариев к моему первоначальному ответу.

Вы запускаете свою Visual Studio с административными привилегиями. Это заставляет приложение (VS) запускаться в своем собственном сеансе, который имеет собственные сетевые сопоставления. Subversion затем пытается подключиться к файлу: /// репозиторий, используя сетевое сопоставление, которое еще не создано.

Решение в этом случае должно гарантировать, что сетевое сопоставление также существует для этого административного пользователя. Вы можете сделать это, перейдя в папку через File-> Open, а затем передав учетные данные.

Другим вариантом является создание командного файла, который создает сетевые сопоставления (net add), а затем запускает Visual Studio. Это позволит избежать повторного применения одного и того же трюка каждый раз.

Другим вариантом является подключение к серверу Subversion по http (s) или svn: //.

+0

Я не уверен, был ли мой вопрос непонятен, я отредактировал, чтобы сделать его более ясным. Я разрабатываю Visual Studio и запускаю свой сайт на IIS 7 локально. Единственный момент, когда я делаю что-либо по сети в настоящее время, - это когда я взаимодействую с моим репозиторием. Это расположено на автономном сетевом диске, я не уверен, могу ли я настроить его для работы с URL-адресом репозитория http: //? – Grokodile

+0

Выполняете ли вы свою визуальную студию в качестве администратора (через высоту или запустите как)? –

+1

Еще одна вещь, которую вы могли попробовать - сначала открыть «\\ mynetworkdrive \ Documents» в файле-> открыть, прежде чем пытаться получить доступ к файлу: // mynetworkdrive/documents через AnkhSVN. –

Смежные вопросы