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

Visual Studio 2013 Team Explorer/Git интеграция отсутствующих файлов

Я установил Visual Studio 2013 с помощью встроенной интеграции Git и BitBucket.

До сих пор это работало хорошо, но я заметил, что Visual Studio перестала отслеживать новые созданные файлы (созданные через IDE, такие как простые новые .cs файлы) для загрузки в BitBucket.

  • Commit/Push для изменений из уже отслеживаемых файлов все еще работает нормально
  • Новые файлы не отображаются в списках исключенных изменений или нерассмотренных файлов
  • Новые файлы включены в файлы проекта (и отображаются правильные изменения)
  • Файлы определенно не исключены любым другим способом (.gitignore или иным образом).

Что еще может заставить новые файлы больше не отслеживаться?

4b9b3361

Ответ 1

Я недавно испытал нечто подобное, но исключение и повторное включение недостающих файлов не сработало для меня. В VS2013 Premium я заметил там раздел "Отслеживаемые файлы" в нижней части окна "Изменения". Это просто вопрос щелчка правой кнопкой мыши файлы, которые я хотел включить, и их добавление. Не идеальный, действительно, но еще один подход.

Ответ 2

У меня та же проблема, что и OP:

  • Commit/Push для изменений из уже отслеживаемых файлов все еще работает нормально
  • Новые файлы не отображаются в списках исключенных изменений или нерассмотренных файлов
  • Новые файлы включены в файлы проекта (и отображаются правильные изменения).
  • Файлы, безусловно, не исключаются другим способом (.gitignore или иным образом).

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

Мое обходное решение

Поскольку я не могу добавить неиспользуемые файлы в visual studio, обходным путем является использование git bash и вручную git добавить для каждого файла, который должен быть добавлен. После этого они отлично работают в визуальной студии снова.

Я надеюсь, что это будет исправлено в ближайшее время... кроме этой ошибки, интеграция git кажется очень приятной из-за короткого времени, которое я пробовал.

Ответ 3

У меня была та же проблема, когда я добавил файл .cs, и VS не распознал его как добавленный и не включил его в мои изменения.

В качестве обходного пути вы можете открыть SourceTree (безумный Atlassian для работы с BitBucket), посмотрите на "Неуправляемые файлы", и щелкните правой кнопкой мыши > Добавить файл. VS немедленно подберет изменение/добавление, и вы сможете совершить через VS.

Не идеально, поскольку вы все еще не можете доверять/полагаться на VS для отслеживания своих коммитов.

Ответ 4

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

Это может быть связано с: Git изменения не отображаются в обновлении VS2013 2

Ответ 5

Я испытал то же самое в Visual Studio 2013 версии 12.0.21005.1 REL, где я бы поместил тестовый файл hello.cs в определенную папку, и он будет отображаться как "Untracked", и все же, если я поставлю тот же файл в другой папке, также в той же общей папке репозитория, он не будет отображаться нигде (включен, исключен или не проверен).

Оказывается, у меня были некоторые глубокие папки с Bootstrap и JQuery, у которых были файлы .gitignore и .gitattribute, и когда я просто переименовал их в disabled.gitignore и disabled.gitattribute, а затем ударил небольшое обновление в верхней части окна Visual Studio Team Explorer, все мои недостающие файлы снова появились! Да!

Кажется, что это ошибка в Visual Studio 2013 и, возможно, более ранних версиях, потому что я ожидал, что файлы .gitignore будут иметь только область видимости в своих собственных папках, но они, похоже, продолжают действовать, когда Visual Studio продолжает перемещаться всю иерархию папок, а не особенно в алфавитном порядке или в глубине-первой/глубине-последней последовательности!

Ответ 6

У меня есть аналогичная проблема, и мое решение использует TortoiseGit. Если я хочу зафиксировать, в разделе "Файлы без версий" TortoiseGit показывает мне файлы, не совпадающие в .gitignore, но добавленные в файловую систему. Вы можете просто проверить все (если вы хотите их добавить) и нажать фиксацию.

enter image description here

Это не только одна проблема с Visual Studio Git. Особенно общие сообщения об ошибках без значения. Каждый раз, когда мне приходилось переключаться на TortoiseGit или на Git bash, чтобы найти, что инструмент Visual Studio Git не нравится.

Ответ 7

У меня тоже была эта проблема, оказалось, что мой установленный git в windows beeing old. Обновите его, и VS снова сможет отслеживать и совершать git repos

https://msysgit.github.io/

Ответ 8

В моем случае я решил эту проблему, добавив ее вручную из оболочки.

Ответ 9

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

  • В Team Explorer при подключении к вашему проекту Git щелкните раскрывающийся список и выберите Settings
  • В Git нажмите Git Settings введите описание изображения здесь
  • Внизу внизу Repository Settings > Ignore File нажмите Add введите описание изображения здесь

Это создаст для вас файл .gitignore по умолчанию. Это сработало для меня, но вы также можете заменить тогда содержимое файла тем, что здесь рекомендуется: https://github.com/github/gitignore/blob/master/VisualStudio.gitignore

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

Ответ 10

Старый пост, но столкнулся с новой причиной этой проблемы. Я получил его после включения загруженного плагина. У плагина была собственная папка .git, которая, казалось, вмешивалась в VS git. После удаления папки я переименовал каждый не отслеживаемый файл и назвал его обратно к оригиналу, а VS начал добавлять + перед файлами, указывающими, что они теперь отслеживаются...

Ответ 11

У меня была эта проблема. Удаление из проекта и добавление его обратно не сработало, даже когда совершается фиксация между каждым шагом. Я закончил использовать исходное дерево, чтобы написать фиксацию, и использовать VS, чтобы вывести его на vsto.

Ответ 12

У меня возникла одна и та же проблема, и не помогли эти решения. Мне не удалось передать файл каким-либо образом в Bitbucket Git repo из VS2015. Я закончил с тем, что внес изменения в файл (не сохранил его), поставил файл и затем зафиксировал его. Исходное дерево также могло отслеживать его как "Добавлено".