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.

Curtis
źródło
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ąć.

Sani Singh Huttunen
źródło
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”
Søren Gørtz Olesen
źródło
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.

Jonathan Perry
źródło
1

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

xszaboj
źródło
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.

Szczecina
źródło
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.

DrCJones
źródło