Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019
Visual Studio 2019 | Visual Studio 2022
Git использует метаданные фиксации, такие как родительские ссылки, сведения о авторе и метки времени для отслеживания истории изменений в репозитории. Вы можете просмотреть журнал Git, чтобы узнать, когда файлы изменились, кто их изменил, и какие изменения были внесены.
Когда люди создают и объединяют ветви функций в целевую ветвь с помощью запросов на вытягивание, журнал разработки целевой ветви может не быть прямой хронологической линией. Таким образом, при просмотре журнала изменений в файле в целевой ветви следует помнить, что порядок фиксаций зависит от стратегии слияния и даты слияния, а не только исходной даты изменений. Например, последняя фиксация в main ветви может привести к изменению, которое было сделано несколько недель назад в ветвь компонента, которое было только объединено в main ветвь с помощью трехстороннего слияния.
Если вы хотите выяснить, как и когда произошло изменение определенного файла, может потребоваться сравнить разные версии одного файла из разных фиксаций, возможно, в разных ветвях.
Сайт проекта группы Azure DevOps позволяет сравнивать две версии одного и того же файла из фиксаций в одной ветви, но не поддерживает сравнение версий файлов в разных филиалах.
В веб-браузере откройте командный проект для организации Azure DevOps. В представлении "Файлы репозитория>" выберите файл и перейдите на вкладку "Сравнение".
На вкладке "Сравнение " выберите две фиксации, содержащие версии файлов, которые нужно сравнить. В представлении диффа отображаются все новые, удаленные или измененные строки файлов.
Примечание.
GitHub позволяет сравнить две версии одного файла из разных фиксаций в разных ветвях. Чтобы сравнить, добавьте /compare/<commit1>..<commit2> URL-адрес репозитория GitHub, чтобы перейти на страницу сравнения. Страница сравнения содержит представление диффа для каждого файла, который отличается. Дополнительные сведения о сравнении фиксаций в GitHub см. в разделе "Сравнение фиксаций".
Visual Studio 2022 предоставляет интерфейс управления версиями Git с помощью меню Git, изменений Git и контекстных меню в Обозреватель решений. Visual Studio 2019 версии 16.8 также предлагает пользовательский интерфейс Team Обозреватель Git. Дополнительные сведения см. на вкладке Visual Studio 2019 — Team Обозреватель.
Visual Studio позволяет сравнивать две версии одного и того же файла в одной ветви, но не поддерживает сравнение версий файлов между ветвями.
В Обозреватель решений выберите файл и выберите журнал представлений Git в контекстном меню файла, чтобы открыть вкладку журнала Git > для выбранного файла.
На вкладке "Журнал Git" выберите "Сравнить с предыдущим" в контекстном меню фиксации, чтобы открыть вкладку Diff, которая сравнивает выбранную фиксацию с предыдущей фиксацией.
Или выберите две фиксации и выберите "Сравнить " из контекстного меню фиксации, чтобы открыть вкладку Diff , которая сравнивает две выбранные фиксации.
На вкладке Diff отображаются новые, удаленные или измененные строки файлов.
Visual Studio 2019 предоставляет интерфейс управления версиями Git с помощью меню Git, изменений Git и контекстных меню в Обозреватель решений.
Visual Studio позволяет сравнивать две версии одного и того же файла в одной ветви, но не поддерживает сравнение версий файлов между ветвями.
В Обозреватель решений выберите файл и выберите журнал представлений Git в контекстном меню файла, чтобы открыть вкладку журнала Git > для выбранного файла.
На вкладке "Журнал Git" выберите "Сравнить с предыдущим" в контекстном меню фиксации, чтобы открыть вкладку Diff, которая сравнивает выбранную фиксацию с предыдущей фиксацией.
Или выберите две фиксации и выберите "Сравнить " из контекстного меню фиксации, чтобы открыть вкладку Diff , которая сравнивает две выбранные фиксации.
На вкладке Diff отображаются новые, удаленные или измененные строки файлов.
Команда Обозреватель не поддерживает эту функцию.
Команда диффа Git может сравнить разные версии одного файла из разных фиксаций в разных ветвях. Команда журнала Git поможет определить фиксации, содержащие версии файлов, которые нужно сравнить.
Используйте git log и укажите файл для перечисления фиксаций, которые изменили файл:
git log <file>
По умолчанию выходные данные команды начинаются с последней фиксации в текущей ветви, а затем выполняет итерацию обратно через фиксации предка (независимо от ветви), следуя родительским ссылкам в метаданных каждой фиксации.
Ниже приведен пример выходных данных для команды git log index.html:
git log --abbrev-commitперечисляет фиксации с помощью сокращенного идентификатора (SHA-1 проверка sum).
git log --oneline перечисляет каждую фиксацию в однострочный сокращенный формат.
git log --patch index.html перечисляет каждую фиксацию вместе с диффом изменений.
Восстановление файлов
Вы можете восстановить определенную версию файла из журнала Git, даже если файл был изменен, удален или переименован в последующей фиксации. Восстановление более старой версии файла не создает новую фиксацию с изменением. Чтобы обновить ветвь с восстановленной версией файла, необходимо зафиксировать это изменение.
Сайт проекта группы Azure DevOps позволяет отменить изменения все изменения, внесенные определенной фиксацией, но не поддерживают отменить изменения изменения в определенном файле в фиксации.
Visual Studio позволяет сравнивать две версии одного и того же файла в одной ветви, но не поддерживает сравнение версий файлов между ветвями.
В Обозреватель решений выберите файл и выберите журнал представлений Git в контекстном меню файла, чтобы открыть вкладку журнала Git > для выбранного файла.
На вкладке "Журнал Git" выберите "Сравнить с предыдущим" в контекстном меню фиксации, чтобы открыть вкладку Diff, которая сравнивает выбранную фиксацию с предыдущей фиксацией.
Или выберите две фиксации и выберите "Сравнить " из контекстного меню фиксации, чтобы открыть вкладку Diff , которая сравнивает две выбранные фиксации.
На вкладке Diff отображаются новые, удаленные или измененные строки файлов.
Visual Studio позволяет сравнивать две версии одного и того же файла в одной ветви, но не поддерживает сравнение версий файлов между ветвями.
В Обозреватель решений выберите файл и выберите журнал представлений Git в контекстном меню файла, чтобы открыть вкладку журнала Git > для выбранного файла.
На вкладке "Журнал Git" выберите "Сравнить с предыдущим" в контекстном меню фиксации, чтобы открыть вкладку Diff, которая сравнивает выбранную фиксацию с предыдущей фиксацией.
Или выберите две фиксации и выберите "Сравнить " из контекстного меню фиксации, чтобы открыть вкладку Diff , которая сравнивает две выбранные фиксации.
На вкладке Diff отображаются новые, удаленные или измененные строки файлов.
Visual Studio 2019 версии 16.8 и более поздних версий предоставляет интерфейс управления версиями Git, сохраняя пользовательский интерфейс Team Обозреватель Git. Чтобы использовать командную Обозреватель, un проверка Tools>Options>Preview Features>New Git user experience from the menu bar.
В Обозреватель решений выберите файл и выберите журнал представлений Git в контекстном меню файла, чтобы открыть вкладку журнала Git > для выбранного файла.
На вкладке "Журнал Git" выберите фиксацию и выберите "Просмотреть сведения о фиксации" в контекстном меню фиксации, чтобы открыть представление сведений о фиксации.
В представлении "Сведения о фиксации" выберите файл и выберите "Открыть" в контекстном меню файла, чтобы открыть предыдущую версию файла на новой вкладке.
Выберите "Сохранить файл > как" в строке меню, чтобы сохранить восстановленную версию файла.
Для восстановления определенной версии файла из журнала Git можно использовать команды проверка out или git.
Git проверка out отменить изменения файл в ранее зафиксированную версию, если указать файл и фиксацию:
git checkout <commit> <file>
Например, git checkout 85435fac src/app.ts отменить изменения src/app.ts файл в его версию в фиксации85435fac.
Git отображает содержимое ранее зафиксированной версии файла, которую можно перенаправить в выходной файл:
git show <commit>:<file> > <output file>
Например, git show 85435fac:src/app.ts > /archive/oldapp.ts будет записывать содержимое фиксации app.ts85435fac/archive/oldapp.ts.
Вы можете сравнить любые локальные или удаленные ветви, чтобы просмотреть изменения, которые будут возникать из слияния или повторной базы. Сравнение ветвей позволяет проверка для конфликт слияния и узнать, как изменения, внесенные другими пользователями, могут повлиять на работу.
Visual Studio 2019 и более ранние версии не поддерживают сравнение ветвей, поэтому если вы используете одну из этих версий, вы можете ветвь сравнения в командной строке Git или с помощью веб-браузера, если репозиторий размещен в Azure Repos или GitHub. Visual Studio 2022 поддерживает сравнение ветвей, как описано в разделе "Сравнение ветвей".
В веб-браузере откройте командный проект для организации Azure DevOps. В представлении "Ветви Repos>" выберите многоточие для любой ветви и выберите "Сравнить ветви", чтобы открыть представление "Сравнение ветвей".
В представлении сравнения ветви выберите две ветви, которые нужно сравнить. Перейдите на вкладку "Файлы " для представления диффа новых, удаленных или измененных строк в каждом измененном файле.
Примечание.
GitHub поддерживает сравнение ветвей. Чтобы сравнить две ветви, добавьте /compare/<branch1>...<branch2> URL-адрес репозитория GitHub, чтобы перейти на страницу сравнения. Страница сравнения содержит представление диффа для каждого файла, который отличается. Дополнительные сведения о сравнении ветвей в GitHub см. в разделе "Сравнение ветвей".
Чтобы сравнить ветвь с текущей ветвью, щелкните правой кнопкой мыши в области "Ветви " репозитория и выберите параметр сравнения. Контекстное меню указывает имена текущих и целевых ветвей:
Visual Studio 2019 не поддерживает сравнение ветвей. Однако вы можете ветвь сравнения в командной строке Git или с помощью веб-браузера, если репозиторий размещен в Azure Repos или GitHub.
Совет
Вы можете получить доступ к веб-порталу из представления "Команда Обозреватель дома", выбрав веб-портал.
Visual Studio 2019 не поддерживает сравнение ветвей. Однако вы можете ветвь сравнения в командной строке Git или с помощью веб-браузера, если репозиторий размещен в Azure Repos или GitHub.
Совет
Вы можете получить доступ к веб-порталу из представления "Команда Обозреватель дома", выбрав веб-портал.
Для сравнения двух локальных или удаленных ветвей можно использовать команду Git diff , указывающую имена ветвей:
git diff <branch1> <branch2>
Git сравнивает фиксацию на кончике одной ветви с фиксацией на вершине другого. Выходные данные диффа будут отображать удаления и дополнения между каждым файлом в двух ветвях.
Ниже приведен пример выходных данных для команды git diff users/frank/feature origin/main, которая сравнивает локальную ветвь с удаленной ветвью:
index 36843b8..03afc4b 100644
--- a/tsapp/index.html
+++ b/tsapp/index.html
@@ -4,7 +4,7 @@
<head>
<meta charset="utf-8" />
<title>TypeScript HTML App</title>
- <link rel="stylesheet" href="fabrikam-test.css" type="text/css" />
+ <link rel="stylesheet" href="fabrikam.css" type="text/css" />
<script src="app.js"></script>
</head>
...
--- a/tsapp/app.ts
+++ b/tsapp/app.ts
constructor(element: HTMLElement) {
this.element = element;
- this.element.innerHTML += "The time is: ";
+ this.element.innerHTML += "The time is now: ";
this.span = document.createElement('span');
this.element.appendChild(this.span);
this.span.innerText = new Date().toUTCString();
Чтобы сузить сравнение с определенным файлом, укажите файл в команде diff :
git diff <branch1> <branch2> <file>
Например, git diff users/frank/feature origin/main index.html будет создаваться только дифф для index.html файла.