Вот объяснение проблемы.
Ожидание
Я хочу вернуть ОДИНОЧНЫЙ ФАЙЛ в конкретный коммит в ветви с помощью графического интерфейса пользователя.
Среда
У меня есть решение VB.NET в Visual Studio 2017. Решение находится под Управление исходным кодом с подключенной Visual Studio Team.Служба с использованием Git в качестве репозитория.
Тестовый образец
- Представьте, что у вас есть 1 ветвь (например, Dev ).
- Представьте, что Dev имеет 3 коммита (например, C1 , C2 , C3 ; C3 последний, а C1 - первый)
- Представьте, что вы хотите отменить C3 изменения в файле A.vb ,так что на самом деле код выглядит так же, как в C2
- Представьте себе, что должен быть возвращен только этот файл, и никакие другие C3 затронутые файлы не должны возвращаться к C2
Что япытаюсь сделать
- В Solution Explorer , выберите файл A.vb , щелкните правой кнопкой мыши и выберите Показать историю ...
- В окне История выберите C2 , щелкните правой кнопкой мыши и Верните
Проблема
Выполнение описанных выше шагов, если нет конфликта, вернет ENTIRE коммит к желаемому (т.е. не только выбранному файлу, но и всему файлу, измененному в коммите)
Обходной путь
Я знаю, что должно быть много способов сделать это с помощью командной строки или через «Просмотр сведений о фиксации» -> открыть файл A.vb -> сохранить как .. в фактической области файла ветви.
Идея
Я надеюсь, что где-то в VS2017 или Team Explorer должна быть возможность отключить " авто-фиксация при возврате"поведение, так что я буду в состоянии выбрать только один файл для его размещения в новом коммите.
Я понятия не имею, как это сделать.т ... и если это тоже правильный путь, очевидно.