Ссылка на строку кода в определенной версии файла в Azure DevOps (VSTS)

#azure-devops

#azure-devops

Вопрос:

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

В Github я бы сделал это, нажав «y», чтобы перейти к версии страницы, которая включает в себя blob SHA:

https://github.com/rails/rails/blob/b49e38b76b0998b0a8312d8c08c98728d3de2006/activerecord/lib/arel/attributes/attribute.rb#L30

(В качестве альтернативы, на GitHub есть опция «копировать постоянную ссылку» в меню «…», которая появляется на полях при выборе строки — описано здесь .)

Есть ли эквивалент в Azure DevOps?

Ссылка, которую я получаю при выборе строки, имеет вид:

https://.../_git/project?path=XXXXamp;version=GBmasteramp;line=426amp;lineStyle=plainamp;lineEnd=427amp;lineStartColumn=1amp;lineEndColumn=1

Множество параметров, определяющих выбор, но ничего не связывает версию файла.

Ответ №1:

Просмотр файлов в фиксации

Убедитесь, что вы просматриваете весь исходный код для фиксации. Выбор строк при просмотре самого коммита (например, AzDOs fancy git show) предназначен для добавления комментариев к коммиту, но это не помогает создать ссылку на строку @ этой версии, и при этом нет способа (по крайней мере, я не смог найти) получить ссылку на комментарий, сделанный настрока. Получение ссылки на комментарий к строке в фиксации могло бы быть полезным для предоставления дополнительного прямого контекста того, что связано и почему, но это также не то, что вы просили.


Редактировать:

Приведенные ниже иллюстрации можно обобщить в нескольких сочетаниях клавиш.

  1. Откройте представление файлов репозитория с помощью глобального ярлыка «e»
  2. Используйте ‘t’, чтобы сфокусироваться на выборе пути для быстрого перехода к нужному файлу
    • пункты 2 и 3 не зависят друг от друга по порядку
  3. Используйте ‘y’, чтобы изменить представление файлов на основе последней фиксации, а не на ветке
  4. Сделать выбор
  5. Скопируйте ссылку, как показано на рисунке ниже

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


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


Сделать выбор

Вы должны иметь возможность выбрать строку в содержимом файла и получить ссылку на эту строку (строки) в этой версии.

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

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

Радость

При переходе по скопированной ссылке вы будете перенаправлены на фиксацию и содержимое файла с выделенной строкой.

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



Возможный альтернативный метод

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

Комментарии:

1. Вау, я бы никогда не нашел это самостоятельно! Поэтому, если я начинаю с выделения в файле и мне нужно поделиться им, у меня есть три дополнительных клика (История> … > Просмотр файлов) плюс повторный поиск местоположения и повторный выбор — но, по крайней мере, я могу это сделать! Спасибо. Все еще хотелось бы создать ярлык для этого, как это делает GitHub.

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

3. Перейдите в репозиторий git и нажмите «t», чтобы войти в поиск файлов, после чего введите имя файла.

4. Предполагая, что ваш код находится в последней фиксации, вы можете использовать «h»> (нажмите )> обзор файлов> «t»

5. просмотрев ярлыки для несвязанной задачи, вы можете использовать ‘y’ в браузере файлов, чтобы перейти к последней фиксации в репозитории. Это поможет вам, если вы знаете, что требуемое изменение содержится в этом коммите.

Ответ №2:

Спасибо @JoshGust. Для всех, кому нужна сокращенная версия:

  1. Файлы —>
  2. (ваша ветка репозитория) —>
  3. История —>
  4. Щелкните хэш / номер фиксации (обычно последний / заголовок) ->
  5. Просмотр файлов —>
  6. Ваш файл ->
  7. Выделите текст и получите ссылку.

Блин… довольно много препятствий для перехода, но рад, что это возможно.

Ответ №3:

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

Я использую эти:

Редактор Плагин
Код Visual Studio Веб-ссылки Git для VS Code
Visual Studio 2022 Веб-ссылки Git