Перейти к содержимому

Как откатить проект в visual studio

  • автор:

Откат проекта

Author24 — интернет-сервис помощи студентам

Случайно удалил часть кода С#, сохранил проект и вышел.
Галочка на автосохранении стояла, но папка Backup files пуста
Можно ли как-то откатить проект?
Хранит ли VS. резервные копии где-то еще?

94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:

Закрытие проекта Visual Studio 2010 при редактировании проекта
Когда редактирую любой проект в visual studio ultimate 2010 ( x64)студия.

Сборка проекта во время работы другого проекта
Здравствуйте! Можно ли в VS13, когда в одном решении находится несколько проектов, во время работы.

Откат IE с 9 на 8
Добрый день. Не подумав решили обновить IE с версии 8 на 9 на OS Windows 7 Домашняя расширенная.

Откат с 8.1 до 8
Здравствуйте!! обновил ноут через магазин до 8.1, она "почти" не запускается, т.е. после загрузки.

Управление репозиториями Git в Visual Studio

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

С помощью Git можно легко управлять версиями в Visual Studio. Кроме того, вы можете удаленно работать с поставщиком Git, например GitHub или Azure DevOps. или локально без каких-либо поставщиков.

Изменение последней фиксации (изменение)

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

Вы можете изменить фиксацию в командной строке с помощью следующей команды:

git commit --amend 

Окно репозитория Git упрощает обновление сообщения фиксации. Откройте сведения о фиксации последней фиксации, дважды щелкнув его, а затем выберите параметр «Изменить » рядом с сообщением о фиксации.

Screenshot of editing a commit message.

После завершения редактирования сообщения фиксации нажмите кнопку «Изменить«.

Screenshot of saving an edited message by selecting Amend.

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

Screenshot of amending code changes by using the Git Changes window.

Дополнительные сведения о внесении изменений см. в статье «Средства Git — переписывание журнала » на веб-сайте Git.

Фиксации слиянием (скваш)

Чтобы объединить серию фиксаций, Git предоставляет возможность squash-фиксаций в одну фиксацию. Этот параметр может быть полезным, если вы делаете частые фиксации и в конечном итоге с длинным списком фиксаций, которые необходимо очистить перед отправкой в удаленный репозиторий.

Вы можете сквашировать две фиксации в командной строке с помощью следующей команды:

git rebase -i HEAD~2 

Затем обновите pick squash сообщение о фиксации, сохраните и обновите его.

Screenshot of updating pick to squash.

Чтобы объединить фиксации в Visual Studio, используйте клавиши CTRL , чтобы выбрать несколько фиксаций, которые требуется объединить. Затем щелкните правой кнопкой мыши и выберите Squash Commits. Visual Studio автоматически объединяет сообщения фиксации, но иногда лучше предоставить обновленное сообщение. После просмотра и обновления сообщения фиксации нажмите кнопку Squash .

Screenshot of squashing commits in Visual Studio.

Дополнительные сведения о сквашировании см. в статье «Средства Git — переписывание журнала » на веб-сайте Git.

Слияние и повторная базовая ветвь

Если вы используете ветви Git для работы с различными функциями, в какой-то момент вам потребуется включить обновления, представленные в других ветвях. Это может произойти, пока вы все еще работаете над ветвь компонента. Это также может произойти, когда вы закончите работу над ветвь компонента и должны сохранить изменения, добавив их в другую ветвь. В Git эти обновления можно включить, объединяя или переключяя ветви.

Следующие инструкции используют New_Feature в качестве примера имени для ветвь компонента. Замените его именем собственной ветви.

Чтобы объединить основную ветвь в ветвь компонента в командной строке, выполните следующие команды:

git checkout New_Feature git merge main 

Чтобы сделать то же самое в Visual Studio, проверка ветвь компонента, дважды щелкнув его в списке ветвей. Затем щелкните правой кнопкой мыши main и выберите «Объединить main» в «New_Feature».

Screenshot of merging branches in Visual Studio.

Чтобы перебазировать главную ветвь в ветвь компонента в командной строке, используйте следующие команды:

git checkout New_Feature git rebase main 

Чтобы сделать то же самое в Visual Studio, проверка ветвь компонента, дважды щелкнув его в списке ветвей. Затем щелкните правой кнопкой мыши main и выберите «Rebase» «New_Feature» на «main».

Screenshot of rebasing branches in Visual Studio.

Дополнительные сведения о слиянии, перебазировании и ветвлениях в целом см . на веб-сайте Git Branching .

Копирование фиксаций (вишня-выбор)

Скопируйте фиксации из одной ветви в другую с помощью параметра выбора вишни. В отличие от слияния или повторной базы, выбор вишни приносит только изменения из выбранных фиксаций, а не все изменения в ветви. Выбор вишни — отличный способ решить эти распространенные проблемы:

  • Случайное фиксация в неправильной ветви. Выберите изменения в правильной ветви, а затем сбросить исходную ветвь до предыдущей фиксации.
  • Вытащив набор фиксаций, сделанных в ветвь компонента, поэтому вы объединяете их обратно в основную ветвь раньше.
  • Перенос определенных фиксаций из основной ветви без повторной балансировки ветви.

Чтобы скопировать изменения из фиксации в текущую ветвь с помощью командной строки, используйте следующую команду:

git cherry-pick 7599e530 

Чтобы сделать то же самое в Visual Studio, просмотрите ветвь, из которой вы хотите выбрать фиксацию, выбрав ее одним щелчком мыши. Затем щелкните правой кнопкой мыши целевую фиксацию и выберите «Вишни-Выбрать«.

Screenshot of cherry-picking in Visual Studio.

По завершении операции Visual Studio отображает сообщение об успешном выполнении. Фиксация, которую вы выбрали вишни , появится в разделе «Исходящие «.

Дополнительные сведения о фиксациях выбора вишни см. на веб-странице Git для команды выбора вишни.

Отменить изменения

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

Чтобы отменить изменения изменения, внесенные в фиксацию с помощью командной строки, используйте следующие команды. Замените пример идентификатором идентификатора реальной фиксации в ветви.

git revert 53333305 git commit 

В предыдущем примере команды отменят изменения, внесенные в фиксацию 53333305, и создадут новую фиксацию в ветви. Исходная фиксация по-прежнему находится в журнале Git. Чтобы сделать то же самое в Visual Studio, щелкните правой кнопкой мыши фиксацию, которую вы хотите отменить изменения, а затем выберите «Вернуть». После подтверждения действия и завершения операции Visual Studio отображает сообщение об успешном выполнении, а новая фиксация появится в разделе «Исходящие».

Screenshot of reverting in Visual Studio.

Выберите новую фиксацию, чтобы убедиться, что она отменяет изменения отменить изменения фиксации.

Screenshot of confirming a revert operation.

Дополнительные сведения о отменить изменения изменениях см. на веб-странице Git для команды отменить изменения.

Сброс ветви в предыдущее состояние

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

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

Чтобы сбросить ветвь в предыдущее состояние с помощью командной строки, используйте следующую команду. Замените пример идентификатором идентификатора реальной фиксации в ветви.

git reset --hard 53333305 

—hard Часть команды сообщает Git, чтобы сбросить файлы в состояние предыдущей фиксации и дис карта любые промежуточные изменения. Чтобы сделать то же самое в Visual Studio, щелкните правой кнопкой мыши фиксацию, в которую нужно сбросить ветвь, а затем нажмите кнопку «Сброс >изменений» (—hard).

Screenshot that shows resetting a branch in Visual Studio.

Дополнительные сведения о сбросе ветвей см. на веб-странице Git для команды сброса.

Связанный контент

  • Работа с несколькими репозиториями
  • Интерфейс Git в Visual Studio

git и Visual Studio. Как откатить состояние проекта к определенному коммиту?

введите сюда описание изображения

Конечно можно 2 раза нажать на коммит и в Team Explorer появятся файлы, которые были изменены, но это не очень удобно. Можно ли состояние проекта «заменить» на состояние какого либо коммита, просто чтобы посмотреть что и как было на тот момент, без удаления других коммитов и создания новых?

Отслеживать
задан 12 янв 2018 в 11:26
419 2 2 золотых знака 9 9 серебряных знаков 19 19 бронзовых знаков

Я нашел пока один вариант: ПКМ по коммиту — View details(детали коммита), в окне, где появятся детали коммита открываем Actions(на русском скорее всего действия) -> Copy Commit ID, далее переходим в консоль GIT — и делаем git checkout

12 янв 2018 в 11:44

@A1essandro, если найдёте другой вариант (помимо checkout ) — обязательно напишите торвальдсу, порадуйте старика новыми неизведанными возможностями. (это шутка. я конечно, знаю и про show , и про cat-file , и про ещё более изощрённые пути, но «каноническим» является, естественно, только checkout ).

12 янв 2018 в 13:13

Я попробовал с помощью программы Git Extention откатить ветку к определенному более раннему коммиту. Откатил, открыл проект, состояние его никак не изменилось, только добавились красные галки у некоторых файлов. s17.postimg.org/f7t9dfw0f/image.png

12 янв 2018 в 13:17

@alexanderbarakin, чет не понял шутку. Даже если гуглить (я с git-ом не очень часто работаю, в основном mercurial) «перейти на определенный коммит git» то выдает чекаут. Объясните, пожалуйста, если я не прав.

12 янв 2018 в 13:24

@ЕгорСпириади, скорее всего Вы именно откатили изменения (т.е. сделали revert githowto.com/ru/undoing_committed_changes)

12 янв 2018 в 13:24

2 ответа 2

Сортировка: Сброс на вариант по умолчанию

Если задача состоит в том, чтобы только посмотреть коммит не создавая новых и не откатываясь по дереву коммитов, то самое простое — создать отдельную ветку. Нажимаем ПКМ в Visual Studio на текущую ветку (справа внизу окна) и выбираем View History. Появится вкладка с деревом коммитов.

Нажимаем ПКМ на нужном коммите и выбираем New Branch. (при этом все изменения текущей ветки должны быть закоммичены, иначе после создания ветки нельзя будет на неё переключиться). После того, как поработали с новой веткой, её можно удалить в Team Explorer (предварительно переключившись на другую ветку).

Сведения об Обозревателе решений

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

Открытие Обозреватель решений

По умолчанию окно инструментов Обозреватель решений отображается как панель в правой верхней части интегрированной среды разработки Visual Studio (IDE). Если окно инструментов Обозреватель решений не отображается, его можно открыть в строке меню Visual Studio с помощью представления> Обозреватель решений или нажав клавиши CTRL +ALT+ L.

Screenshot of the Visual Studio IDE that shows where Solution Explorer is positioned.

Пользовательский интерфейс Обозреватель решений

Давайте рассмотрим окно инструментов Обозреватель решений и его пользовательский интерфейс (пользовательский интерфейс). Начнем с аннотированного снимка экрана открытого консольного решения C# с двумя проектами.

An annotated screenshot of the Solution Explorer tool window in Visual Studio.

В следующей таблице представлен текстовый эквивалент аннотированного снимка экрана, но с несколькими удобными ссылками, которые можно использовать для получения дополнительных сведений.

Элемент пользовательского интерфейса Действие
Панель инструментов Управление тем, как отображаются файлы
Панель поиска Поиск определенных файлов и типов файлов
Главное окно Просмотр файлов, проектов и решений и управление ими
Узел решения Управление решениями
Узел проекта Управление проектами
Узел зависимостей Управление зависимостями решения и проекта
Узел программы Просмотр, изменение и управление программой или приложением (приложением)
Вкладка «Изменения Git» Использование Git и GitHub в Visual Studio для совместной работы над проектами с командой

панель инструментов Обозреватель решений

Чтобы продолжить, давайте рассмотрим панель инструментов в Обозреватель решений.

Screenshot of the Solution Explorer toolbar in Visual Studio.

Панель инструментов содержит следующие элементы пользовательского интерфейса слева направо:

Элемент пользовательского интерфейса Действие
Кнопка «Назад» Переключение между результатами поиска
Кнопка «Переадресация» Переключение между результатами поиска
Кнопка «Главная « Возврат к представлению по умолчанию
Кнопка «Переключить представления» Переключение между представлением решения по умолчанию и необязательным представлением папки
Кнопка «Отложенные изменения» и раскрывающееся меню Просмотр открытых файлов или файлов с ожидающих изменений
Синхронизация с кнопкой «Активный документ « Поиск файла из редактора кода
Кнопка «Обновить » (условный) Отображается только при выборе зависимости, например функции или пакета
Свернуть кнопку «Все « Свернуть представление файла в главном окне
Кнопка «Показать все файлы» Просмотр всех файлов, включая выгруженные проекты
Кнопка «Свойства» Просмотр и изменение параметров для определенных файлов и компонентов
Кнопка «Предварительный просмотр выбранных элементов» Просмотр выбранного файла или компонента в редакторе кода

Контекстное меню Обозревателя решений

В Обозревателе решений есть несколько параметров, с которыми можно взаимодействовать с помощью контекстного меню, открываемого правой кнопкой мыши. Отображаемые контекстные параметры зависят от того, какой узел выбран: Решение или Проект.

Параметры меню узла решения

На следующем снимке экрана для консольного приложения C# отображаются параметры контекстного меню, которое можно открыть, щелкнув правой кнопкой мыши узел Решение.

Screenshot of the right-click context menu from a solution node in Solution Explorer.

Сведения, отображаемые в контекстном меню узла Решения, также зависят от типа проекта, языка программирования или платформы. На следующем снимке экрана выделены дополнительные параметры для приложения C#: Зависимости проекта, Порядок сборки проекта, Настройка запуска проектов и всплывающее меню Git. Эти дополнительные параметры обычно появляются, когда вы добавляете еще один проект в решение, а затем добавляете его в репозиторий.

Screenshot of the right-click context menu from a solution node in Solution Explorer, which shows extra options.

Параметры меню узла проекта

На следующем снимке экрана для консольного приложения C# отображаются параметры контекстного меню, которое можно открыть, щелкнув правой кнопкой мыши узел Проект.

Screenshot of the right-click context menu from a project node in Solution Explorer.

Сведения, отображаемые в контекстном меню узла Проект, также зависят от типа проекта, языка программирования или платформы. На следующем снимке экрана выделен дополнительный параметр для приложения C#: всплывающее меню Зависимости сборки. Дополнительные параметры обычно появляются, когда вы добавляете еще один проект в решение, а затем добавляете его в репозиторий.

Screenshot of the right-click context menu from a project node in Solution Explorer, which shows an extra option.

Меню «Добавить»

В контекстном меню Обозревателя решений одним из самых полезных параметров является всплывающее меню Добавить. С его помощью можно добавить еще один проект в решение. Кроме того, можно добавить элемент в проект и многое другое.

Screenshot of the Add fly-out menu from the right-click context menu in Solution Explorer.

Открыть всплывающее меню Добавить можно из узлов Решение, Проект или Зависимости. Его пункты зависят от узла.

Руководство по добавлению элементов и проектов с помощью контекстного меню в Обозревателе решений см. в статье Общие сведения о проектах и решениях.

Диалоговое окно быстрого добавления

Начиная с выпуска Visual Studio 2022 версии 17.5 , можно использовать диалоговое окно быстрого добавления для создания пустого файла или простого класса C#. В Обозреватель решений щелкните правой кнопкой мыши папку или проект, а затем выберите «Добавить>новый элемент«. Или, если вы предпочитаете, используйте сочетание клавиш CTRL + SHIFT+ A.

Screenshot of the new Quick Add dialog in Visual Studio.

С помощью быстрого добавления можно выполнить следующие задачи.

  • Добавьте новый файл без просмотра списка шаблонов.
    Пример: MyClass.cs
  • Создайте вложенные папки в одной операции.
    Пример: Folder1/Folder2/, Folder1/Folder2/MyFile.cs
  • Добавьте файлы с любым расширением или без расширения вообще.
    Пример: File.MyExtension, README, .gitignore
    • Краткое добавление заполняет расширение по умолчанию, но после открытия диалогового окна можно выбрать Escape (ESC), чтобы быстро очистить поле ввода.

    Вы также можете быстро переключаться между диалогом быстрого добавления и диалогом «Создать элемент». Это делается следующим образом.

    • Чтобы открыть диалоговое окно «Новый элемент«, используйте «Показать все шаблоны«. Screenshot of the Quick Add dialog with the Show All Templates button highlighted for emphasis.
    • Чтобы открыть диалоговое окно быстрого добавления, используйте режим «Показать компактный«. Screenshot of the Quick Add dialog class selection picker with the Show Compact View button highlighted for emphasis.

    Visual Studio запоминает ваш выбор, чтобы получить интерфейс, который лучше всего подходит для ваших потребностей. Если вы хотите вернуться в диалоговое окно быстрого добавления по умолчанию, выберите shift +F2.

    Вы можете настроить сочетания клавиш для команды Project.AddNewItem и команды AddQuickFile из клавиатуры «Параметры>инструментов».>>

    Средство сравнения файлов

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

    Screenshot of the file comparison tool from the right-click context menu in Solution Explorer.

    Файлы можно сравнить следующими способами:

    • Щелкните правой кнопкой мыши один файл, выберите «Сравнить с. » в контекстном меню, которое открывается проводник. Затем перейдите к любому файлу и выберите его для сравнения.
    • Чтобы выбрать два файла, удерживая нажатой кнопку CTRL . Затем щелкните правой кнопкой мыши и выберите » Сравнить выбранный» в контекстном меню.

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

    Команда Свернуть все потомки

    Кроме того, в состав выпуска Visual Studio 2022 версии 17.7 входит команда «Свернуть все потомки «. Эта команда рекурсивно сворачивает все узлы под выделенным элементом, чтобы можно было глубоко вложенные иерархии при переходе по структуре проекта.

    Screenshot of the Collapse All Descendants command from the right-click context menu in Solution Explorer.

    Команду «Свернуть все потомки» можно найти в контекстном меню правой кнопкой мыши для любого элемента в Обозреватель решений с потомками. Чтобы использовать команду, можно также нажать клавиши CTRL +ВЛЕВО.

    Связанный контент

    • Что такое решения и проекты в Visual Studio?
    • Что такое конструктор проектов .NET?
    • Настройка макетов окон и персонализация вкладок в Visual Studio

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *