Visual Studio не отслеживает изменения и не извлекает файлы из системы контроля версий, пока я их редактирую - PullRequest
59 голосов
/ 14 марта 2011

Я новичок в TFS. На своей работе я сопоставил проекты TFS с локальными каталогами, выполнил get, и все работает, как я ожидал. Когда я редактирую файлы в своей локальной копии, система управления исходным кодом автоматически проверяет их для редактирования и отслеживает файлы с ожидающими изменениями через окно ожидающих изменений. Затем я просто проверяю их в течение дня, используя это окно.

Однако дома этого, похоже, не происходит. У меня есть доступ к управлению исходным кодом и с помощью проводника управления исходным кодом, сопоставил проекты с локальными каталогами. Это оказалось работать нормально. Однако, когда я открываю проекты и открываю файлы, сделанные мной изменения не автоматически проверяют файлы. Фактически, Visual Studio даже не меняет свой статус только для чтения, пока я не попытаюсь сохранить свои изменения; в этот момент он предупреждает меня, что файл доступен только для чтения, и спрашивает, хочу ли я попробовать перезаписать разрешения и сохранить. Я делаю, и это прекрасно работает. Но опять же, никакие изменения не регистрируются в окне ожидающих изменений. Я немного потерян. Единственный опыт управления исходным кодом, который у меня действительно есть, это subversion и плагин для визуальной студии AnkhSVN.

Есть идеи? Я даже открыл свое решение, дважды щелкнув файл решения, который находится в проводнике контроля версий. Можно подумать, что он полностью осознает, что открываемое мной решение должно отслеживаться системой контроля версий.

Любая помощь очень ценится.

РЕДАКТИРОВАТЬ Поскольку люди, кажется, зациклены на том, что я сказал "дома", позвольте мне уточнить. Нет проблем с сетью. Я нахожусь на VPN. Я могу просматривать источник контроля просто отлично. С тех пор я переустановил все по разным причинам. Все прошло хорошо. У меня просто проблема с Visual Studio, которая не отслеживает изменения в файлах и не позволяет вернуть их в систему контроля версий. Итак, подведем итог:

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

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

Ответы [ 10 ]

113 голосов
/ 14 марта 2011

Обычно SO - первый с достойным ответом, но сегодня вечером я думаю, что кто-то повесил на стулья нескольких людей.Другой сайт ответил на мой вопрос и с большой точностью.Вот ответ:

Щелкните правой кнопкой мыши по узлу решения и перейдите к «Перейти в онлайн».По разным причинам Visual Studio может пометить ваше решение как отслеживаемое с помощью системы контроля версий, но «автономное».Он все еще отслеживает изменения за кулисами, ожидая, когда вы снова подключитесь к Интернету.После этого окно ожидающих изменений заполнилось, и все стало нормально.Я подумал, что это где-то простая настройка.

Надеюсь, это поможет другим с такой же проблемой.

21 голосов
/ 05 января 2016

Я нашел интересную настройку в меню «Файл»> «Управление источником»> «Дополнительно»> «Изменить управление источником».

Если я привяжу решение и спроецирую к своему серверу управления исходным кодом (сначала отмените привязку, если он уже привязан), а затем вдруг оно сработает! Сохранение файла автоматически проверяет файл и отслеживает изменения.


Редактировать: это похоже на ошибку в Visual Studio. Если этот обходной путь поможет вам, было бы замечательно, если бы вы создали новую проблему на https://developercommunity.visualstudio.com с информацией о версии Visual Studio, чтобы команда разработчиков могла это исправить!

3 голосов
/ 23 марта 2018

Перейдите в привязки управления исходным кодом (Файл-> Контроль источника-> Изменить контроль источника) - вы можете заметить, что связан только проект, а не решение. Выберите решение, нажмите Bind.

3 голосов
/ 02 декабря 2011

Я только что нашел, как это исправить, когда вы уже в сети (не отображается опция «Перейти в Интернет»).На самом деле в списке находятся ожидающие изменения, но они скрыты под огромным разделом «Комментарии».Чтобы просмотреть их, увеличьте высоту вкладки «Ожидающие изменения» и уменьшите высоту раздела «Комментарий»: вы увидите список ожидающих изменений, которые были скрыты плохо масштабируемой VS:)

2 голосов
/ 01 декабря 2017

в моем случае я решил проблему, выполнив следующие шаги:

  1. Щелкните правой кнопкой мыши файл решения в обозревателе решений.
  2. нажмите кнопку добавить решение в систему контроля версий
  3. , если вы уже добавили свои файлы в tfs, нажмите кнопку игнорировать для всплывающих окон с заменами файлов
1 голос
/ 21 января 2016

Я обнаружил, что один из моих проектов вообще не был добавлен в систему контроля версий - каким-то образом он был пропущен, и поэтому любые изменения в этом проекте не будут проверены. Я щелкнул правой кнопкой мыши на узле решения, щелкнул «добавить в систему управления исходным кодом», он предупредил меня, что некоторые проекты уже отслеживаются, и я решил игнорировать эти проекты и приступил к добавлению отсутствующих проектов в систему управления исходным кодом. Теперь выезд работает отлично. Обмен в случае, если это помогает кому-то еще!

1 голос
/ 04 сентября 2015

Для меня решение было перейти в окно Team Explorer Pending Changes и оттуда инициировать регистрацию. Не видел вариант выхода в Интернет, я на VS2013. Спасибо всем за указатели!

1 голос
/ 05 марта 2015

Я получал ошибку «Только чтение», как и все остальные.Я получил маленькую красную галочку рядом с файлами, которые я редактировал, но когда я пошел, чтобы сохранить, он попросил меня сохранить файл, потому что он был только для чтения.Я переместил файлы из другой системы контроля версий, и они все еще были доступны только для чтения.Но я не думаю, что Git заботится о сохранении файлов только для чтения, как это делал мой старый источник контроля.Поэтому я просто удалил флажки «только для чтения» в проводнике Windows, и все было хорошо.

0 голосов
/ 17 июля 2017

Ни один из ответов / предложений в этом посте не помог мне, но я нашел решение проблемы после нескольких часов стягивания волос.

  1. Найдите папку .git для своего хранилища.
  2. Удалить файл index.lock внутри.
  3. Перезапустите Visual Studio.

(я использую Visual Studio 2017.)

0 голосов
/ 25 октября 2015

Установить 2 вещи:

  1. Team Explorer для VS2013 (http://www.microsoft.com/en-us/download/details.aspx?id=40776)
  2. Установка VS TFS Электроинструменты (https://visualstudiogallery.msdn.microsoft.com/f017b10c-02b4-4d6d-9845-58a06545627f)

Вот и все

...