Мені потрібен обхідний шлях для Resharper, коли він говорить "Не вдалося змінити документи". Хтось знає, для чого це робиться і як це обійти?


79

Протягом останніх місяців я кілька разів помічав, що іноді я використовую маленьку жовту піктограму лампочки і клацаю правою кнопкою миші та вибираю для неї опцію, щоб щось виправити для мене, а потім просто підкреслює, що збирається виправити, і з’являється повідомлення "Не вдалося змінити документи".

Хтось мав цю проблему?
Ви знаєте, як це подолати?
Це майже так, ніби resharper вважає, що документ доступний лише для читання, або щось інше, хоча я можу вручну редагувати документ.


1
Ви використовуєте Git для контролю джерел? Який клієнт Git ви використовуєте?
Джон Сондерс,

Так. Я використовую GIT. Я використовую клієнт TFS Microsoft.
Кертіс

1
Для мене це сталося, коли я робив тестовий проект. Проблемою виявився той факт, що кореневий каталог для git був налаштований для C: \ Source, а тестовий проект створено в "C: \ users \ <ім'я користувача> \ Documents \ Visual Studio 2013 \ Projects "- шлях до VS 2013 за замовчуванням для створення нових проектів. Очевидно, що шлях створення проекту за замовчуванням до VS не лежить у кореневій директорії керування джерелом git, тому git не відстежує файли як статус "не відслідковується", що призводить до цієї проблеми редагування. Коли я перемістив папку тестового проекту всередину кореня git, її миттєво вирішили
RBT

1
Перезапуск Visual Studio зазвичай робить для мене фокус
Роббі Ді,

Відповіді:


28

Я ненавиджу те саме питання з Visual Studio 2013.
Рішенням було додати проект до контролю версій (у моєму випадку git).

Тепер вам не потрібно робити коміти, якщо ви цього не хочете, а просто додайте рішення до контролю версій, і проблема повинна зникнути.


2
Це іноді трапляється, коли ви додаєте нові проекти в каталог, який не розглядається VS (або точніше - плагін MS GIT) як під контролем джерела GIT, тоді як інші проекти є. Це було причиною в моєму випадку. Переміщення каталогу проекту під папку рішень зробило трюк
Марек,

Мені подобається рішення з вимкненням плагіна керування джерелом Visual Studio, оскільки це найпоширеніший випадок. Якщо проект додано до контролю джерела, то проблем взагалі немає. Але якщо ввімкнено плагін керування джерелом і код не додається до репо, тоді виникає ця проблема. Тому для мене логічніше просто відключити плагін керування джерелом.
Roboblob 02

174

Вимкніть плагін керування джерелом Visual Studio.

  1. Інструменти -> Параметри -> Керування джерелом
  2. Змінити "Плагін поточного керування джерелом" з "Постачальник Microsoft Git" на "Немає"

10
Що станеться, якщо ви хочете ним скористатися? Я припускаю, що прийнята відповідь буде нормальною? Поки він знаходиться у джерелі (GIT), це не має значення?
bdwakefield

2
Дякую! Мені також довелося перезапустити Visual Studio, щоб виправлення працювало.
Karle

2
Якщо ваш проект використовує Git, ви не можете змінити постачальника керування джерелом. Однак проблема, схоже, виникає лише у файлах, які не мають версій; тому використовуйте git-клієнт (наприклад, TortoiseGit), щоб додати ці файли. Зауважте, що перейменування файлу у Visual Studio не призводить до автоматичного скасування / скасування додавання старого імені та додавання нового, тому вам доведеться ще раз обійти Visual Studio, щоб повернути робоче середовище.
Застай

Працював і у мене. Неймовірно, що це виправлення. Те, що мені доводиться відключати у VS2015, щоб він працював належним чином, неймовірно !!!
Martijn B

4

Що для мене було фокусом, це розвантаження та перезавантаження проекту, в якому знаходиться файл, який не вдається відредагувати. (Просто клацніть правою кнопкою миші на проект і виберіть "Вивантажити проект" у контекстному меню.


1

Я розпочав VS 2013 як адміністратор і відкрив проект, і зараз він працює нормально.


0

Дозвольте мені трохи передзвонити:

Я вирішив цю помилку, додавши файл .gitignore і намагаючись зафіксувати свої зміни.

Я не можу пояснити, як це вирішило, однак, це трапилося зі мною на абсолютно новому сховищі git. Я використовував Git і VS кілька місяців в іншому сховищі, у якого був файл .gitignore від початківців, і ні у мене, ні в когось із моєї команди раніше не було цієї проблеми.


0

Зміна "Microsoft Git Provider" спрацювала, але я хотів отримати постійне рішення.

Я вже використовував GIT і мав усі матеріали ReSharper у своєму .gitignore. Я використовував VS 2015. Коли я оновив останню версію ReSharper 2017.1.3, ця проблема почала виникати.

Я зробив резервну копію моєї папки рішення (назвав її "repo_backup"), а потім клонував моє репо свіже з git. Знову все запрацювало як нормально. Я скопіював свої зміни в нове повторно клоноване репо, видалив repo_backup, а потім продовжив свій шлях.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.