Potrzebuję obejścia dla Resharper, gdy wyświetla się komunikat „Nie udało się zmodyfikować dokumentów”. Czy ktoś wie, dlaczego to robi i jak to obejść?


79

Zauważyłem kilka razy w ciągu ostatnich miesięcy, że czasami używam małej żółtej ikony żarówki i klikam ją prawym przyciskiem myszy i wybieram opcję, aby coś dla mnie naprawić, a następnie po prostu podkreśla to, co miał naprawić, i wyskakuje komunikat o treści „Nie udało się zmodyfikować dokumentów”.

Czy ktoś miał ten problem?
Czy wiesz, jak to pokonać?
To prawie tak, jakby resharper myślał, że dokument jest tylko do odczytu lub coś w tym rodzaju, mimo że mogę ręcznie edytować dokument.


1
Czy używasz Git do kontroli źródła? Którego klienta Git używasz?
— John Saunders

Tak. Używam GIT. Używam klienta TFS firmy Microsoft.
— Curtis

1
U mnie tak się stało, gdy robiłem projekt testowy. Problem polegał na tym, że katalog główny git był skonfigurowany na C: \ Source, a projekt testowy został utworzony w "C: \ users \ <nazwa_użytkownika>" \ Documents \ Visual Studio 2013 \ Projects ", która jest domyślną ścieżką dla VS 2013 do tworzenia nowych projektów. Oczywiście domyślna ścieżka tworzenia projektu VS nie znajduje się w katalogu głównym kontroli źródła git, więc git nie może śledzić plików jako Stan „nieśledzony”, który powoduje ten problem z edycją. Kiedy przeniosłem folder projektu testowego do katalogu głównego git, problem został rozwiązany natychmiast
— RBT

1
Ponowne uruchomienie programu Visual Studio normalnie
— Robbie Dee

Odpowiedzi:


28

Mam ten sam problem z Visual Studio 2013.
Rozwiązaniem było dodanie projektu do kontroli wersji (w moim przypadku git).

Teraz nie musisz wykonywać zatwierdzeń, jeśli nie chcesz, ale po prostu dodaj rozwiązanie do kontroli wersji, a problem powinien zniknąć.


2
Zdarza się to czasami, gdy dodajesz nowe projekty w katalogu, który nie jest uwzględniany przez VS (a dokładniej - wtyczkę MS GIT) jako pod kontrolą źródła GIT, podczas gdy inne projekty są. To był powód w moim przypadku. Przeniesienie katalogu projektu poniżej folderu rozwiązań załatwiło sprawę
— Marek

Podoba mi się rozwiązanie z wyłączaniem wtyczki kontroli źródła Visual Studio, ponieważ jest to bardziej powszechny przypadek. Jeśli projekt zostanie dodany do kontroli źródła, nie ma żadnego problemu. Ale jeśli wtyczka kontroli źródła jest włączona, a kod nie jest dodawany do repozytorium, pojawia się ten problem. Więc dla mnie bardziej logiczne jest po prostu wyłączenie wtyczki kontroli źródła.
— Roboblob

174

Wyłącz wtyczkę kontroli źródła programu Visual Studio.

  1. Narzędzia -> Opcje -> Kontrola źródła
  2. Zmień „Bieżącą wtyczkę kontroli źródła” z „Microsoft Git Provider” na „Brak”

10
Co się stanie, jeśli zechcesz go użyć? Zakładam, że zaakceptowana odpowiedź byłaby w porządku? Dopóki jest w źródle (GIT), to nie ma znaczenia?
— bdwakefield

2
Dzięki! Musiałem też zrestartować Visual Studio, aby poprawka zadziałała.
— Karle

2
Jeśli projekt korzysta z Git, nie możesz zmienić dostawcy kontroli źródła. Jednak wydaje się, że problem występuje tylko w plikach, które nie są wersjonowane; więc użyj klienta git (np. TortoiseGit), aby dodać te pliki. Zwróć uwagę, że zmiana nazwy pliku w programie Visual Studio nie powoduje automatycznego przywrócenia / cofnięcia dodania starej nazwy i dodania nowej, więc trzeba będzie ponownie obejść program Visual Studio, aby przywrócić środowisko robocze.
— Zastai

Dla mnie też zadziałał. Niewiarygodne, że to poprawka. Rzeczy, które muszę wyłączyć w VS2015, aby działał poprawnie, są niewiarygodne !!!
— Martijn B

4

Jedyną sztuczką było dla mnie wyładowanie i ponowne załadowanie projektu, w którym znajduje się plik, którego nie można edytować. (Po prostu kliknij projekt prawym przyciskiem myszy i wybierz „Zwolnij projekt” z menu kontekstowego.


1

Zacząłem VS 2013 jako administrator i otworzyłem projekt i teraz działa dobrze.


0

Pozwól mi trochę spóźnić się:

Rozwiązałem ten błąd, dodając plik .gitignore i próbując zatwierdzić zmiany.

Nie potrafię wyjaśnić, jak to rozwiązało, jednak zdarzyło mi się to na zupełnie nowym repozytorium git. Używam Git i VS przez kilka miesięcy na innym repozytorium, które od początku zawierało plik .gitignore i ani ja, ani nikt z mojego zespołu nie miał wcześniej tego problemu.


0

Zmiana „Microsoft Git Provider” zadziałała, ale potrzebowałem trwałego rozwiązania.

Używałem już GIT i miałem wszystkie rzeczy ReSharper w moim .gitignore. Używałem VS 2015. Kiedy zaktualizowałem ReSharper 2017.1.3 do najnowszej wersji, ten problem zaczął się pojawiać.

Zrobiłem kopię zapasową folderu mojego rozwiązania (nazwałam go „repo_backup”), a następnie sklonowałem repozytorium prosto z gita. Wszystko znów działało normalnie. Skopiowałem moje zmiany do nowego ponownie sklonowanego repozytorium, usunąłem repo_backup i kontynuowałem.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.