В настоящее время я использую веб-сервер apache на сервере Windows, на котором размещено несколько репозиториев с индивидуальными настройками того, кто имеет права на запись и / или чтение. Аутентификация будет выполняться в нашей Active Directory, чтобы пользователь мог использовать свои обычные учетные данные, как обычно. Пока все работает нормально и все довольны.
Но теперь один сотрудник увидел интересный эффект, который я мог легко воспроизвести на ванильной основе:
В одном репозитории она (пусть называет ее Алисой) имеет доступ на чтение / запись, а еще один парень (назовем его Боб) имеет доступ только на чтение. Боб нашел ошибку в коде и исправил ее. Когда он пытался зафиксировать изменения, хранилище отклоняло его из-за неправильных учетных данных. Поэтому Боб позвал Алису, чтобы она приехала. Он просмотрел код, нашел его в порядке и снова нажал кнопку «Подтвердить». Сохраненные учетные данные снова не удалось, и Алиса ввела свои учетные данные (не устанавливая флажок сохранения), и данные были переданы в хранилище.
Все работало, как ожидалось, и все были счастливы ...
Но затем Алиса заглянула в журнал подрывной деятельности хранилища, и автором этого конкретного обязательства была не она, а Боб.
Похоже, что TortoiseSVN не принял учетные данные для входа в систему в качестве автора, вместо этого он принял текущего вошедшего в систему пользователя на компьютере с Windows 7.
Как Алиса сказала мне об этом, я был очень удивлен и установил пустой репозиторий на сервере с двумя пользователями (моя обычная учетная запись Windows только для чтения, какая-то специальная учетная запись с доступом для чтения / записи). Я сделал проверку хранилища со своими обычными учетными данными Windows, добавил файл и попытался зафиксировать его. Это не удалось при первом запуске, и после применения учетных данных специальной учетной записи файл был добавлен в репозиторий. Но автором в репо был мой обычный аккаунт, а не специальный аккаунт! В отличие от журналов apache, я вижу, что файл действительно был зафиксирован специальной учетной записью и что предварительные попытки с обычной учетной записью не увенчались успехом.
Из-за того, что я попробовал это с недавно созданным репозиторием, у них нет ловушек, которые могут привести к этой проблеме, а также нет правил перезаписи или чего-то еще, работающего на сервере apache, которое может привести к проблеме.
Все эти тесты были выполнены на компьютере с Windows 7 с использованием Tortoise 1.7.3 - 1.7.5 с одинаковыми результатами. Затем я нашел более старую машину под управлением Windows XP с Tortoise 1.6.5 и попробовал тот же сценарий из их. Здесь поведение отличается!
Вывод заключается в том, что Tortoise 1.7.x в Windows 7 использует автора, отличного от Tortoise 1.6.5 в Windows XP, но я не могу найти информацию об этом изменении где-либо в журналах изменений или заметках о выпуске Tortoise.
Кто-нибудь еще уже заметил это изменение и существует ли способ вернуть его к старому поведению?