Подтвердить что ты не робот

Git изменения не отображаются в VS2013 Обновление 2

Я использую Git в VS2013, и мои измененные файлы не отображаются в окне изменений VS.

Когда я изменил файл, но прежде, чем я сохраню его на диск, он появится. Но как только я сохраняю файл на диске, изменение исчезает из окна "Изменения".

Я попытался удалить и переустановить VS2013, но это не помогло. Любые идеи о том, как сохранить изменения в окне после их сохранения?

Я использовал Git в командной строке, чтобы обойти эту проблему, чтобы клиент Git мог обнаружить, что есть изменения.

Перед сохранением.

enter image description here

После сохранения изменения файла исчезнет.

enter image description here

4b9b3361

Ответ 1

У меня был установлен предварительный просмотр Roslyn. Отключение этого расширения устраняет проблему.

Ответ 2

У меня тоже была эта проблема. Это произошло случайно, и рано или поздно мой статус git был полностью удален из Microsoft git Провайдера надстройки в Visual Studio, хотя это было правильно на git bash.

Оказывается, в моем случае это произойдет, как только я открою соединение с базой данных LocalDb из SQL Management Studio и сохраню соединение. Поэтому я подозреваю, что это может произойти всякий раз, когда процесс блокирует файл, который контролируется Microsoft git Provider.

Надеюсь, это поможет. В моем случае это исправлено!

Ответ 3

даже если это довольно старый вопрос, у меня аналогичная проблема на прошлой неделе на VS2013, и ни один из обходных методов предварительного просмотра для меня не эффективен. При редактировании файла он появляется в списке команд Team Explorer для файлов изменений, но, как только они будут сохранены, они исчезнут из любых списков. Другие инструменты (git bash, черепаха,...) видели их как модификацию и uncommit, но не VS. Я решаю эту проблему в параметре Git в Team Explorer, создав файл .gitIgnore для решения! Надеюсь, это поможет.

Ответ 4

Откройте файл .gitignore с помощью редактора или Notepad ++ и удалите строки, содержащие файлы, которые вы хотите отслеживать.

Ответ 5

Я столкнулся с этой проблемой при добавлении нового, но существующего проекта к моему решению в VS2015. Проблема заключалась в том, что новый проект использовал локальный файл db (.sdf, а также opendb), который был добавлен в корень решения. При попытке выполнить незафиксированные изменения он терпел неудачу, потому что не смог получить доступ к файлу opendb, а vs его удержал.

Я нашел это, используя git для окон и пытаясь выполнить мои изменения. Как только я добавил *opendb в мой .gitignore и повторно открытую Visual Studio, он нашел все мои другие изменения.

Ответ 6

У меня была такая же проблема, и это происходило, потому что все файлы кода находились в подпапке, которая также содержала репозиторий git, и это мешало ему оставаться в разделе "включенные изменения" после сохранения.

Чтобы исправить это, я вошел в подпапку и сменил все имена файлов git на что-то еще (например, переименовал папку .git в z.git,.gitingore в z.gitingorez, ect). После этого все файлы появились в разделе "untracked files" и изменения остались в разделе "включенные изменения" после сохранения.

Ответ 7

Я использую Visual Studio 2017, но у меня была ТОЧНАЯ такая же проблема. Я потратил несколько часов на то, чтобы найти решение.

Решение:

  • Найдите .git folder.
  • Найдите и удалите файл 'index.lock'.
  • Перезапустите Visual Studio.

Надеюсь, это поможет кому-то!

Ответ 8

Надеюсь, это поможет кому-то еще...

Простое решение:

1) Закройте VS 2013 и вручную переименуйте папку решения. 2) Повторно открыть VS 2013. VS предложит вам клонировать решение с сервера, чтобы открыть его. Следуйте подсказкам и клонируйте новую копию решения. 3) Закройте VS 2013 и используйте Beyond Compare (или некоторую другую систему сравнения файлов), чтобы вручную переместить ваши изменения из старого решения в новое решение. 4) Повторно открыть VS 2013. Ваши изменения появятся, и вы сможете передать их в локальный и удаленный репозиторий.

--- Дополнительная информация ---

Была та же проблема. Сделано изменение файла в обновлении VS 2013. 4. Перед сохранением файла изменилось на экране "изменения" (и рядом с элементом в проводнике решений появился галочка). После сохранения элемент больше не отображается на экране "Изменения" (и значок в проводнике решений сменился на блокировку).

Эта проблема может произойти из-за одной из двух последних изменений, внесенных мной в проект, хотя я не успел воспроизвести сценарий.

1) Я вручную (вне VS) сделал некоторые копии/резервные копии для развертывания новой версии стороннего js lib. исходная структура папок: C:\git\решение\webProj\Сценарии\jwplayer\премиум\jwplayer.js C:\ git\решение\webProj\Сценарии\jwplayer\бесплатно\jwplayer.js

новая структура папок: C:\git\решение\webProj\Сценарии\jwplayer \ C:\git\решение\webProj\Сценарии\jwplayer\jwplayer-6.11__MACOSX C:\git\решение\webProj\Сценарии\jwplayer\jwplayer-6,11\jwplayer C:\ git\решение\webProj\Сценарии\jwplayer\jwplayerOriginal\

Это была попытка изолировать jwplayer.js(и другие необходимые файлы) в каталоге jwplayer. В новом каталоге __MACOS были имена файлов, начинающиеся с ".". Там теория о том, что путь к этим файлам может быть броском и ошибкой во время обработки изменений VS 2013 года.

2) Недавно я получил обновления nuget. Предостережение, перед обновлением nuget, я удалил ссылку на файлы .map в базовых js файлах в каталоге сценариев (длинная история). Когда я попытался обновить nuget, nuget распознал изменения и не смог обновить, но все еще обновил web.config и пакеты. Это привело к несоответствию между тем, что было установлено nuget, и тем, что было на самом деле установлено. Я использовал интеграцию VS 2013/ git для "отмены" каждого обновления, но, возможно, что-то пропустил.