기능 코드 검색
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
기능 코드 검색을 사용하여 필요한 코드를 더 빠르게 찾습니다. 이 문서에서는 Azure DevOps용 Code Search Marketplace 확장을 사용하여 코드 형식 및 기타 함수를 사용하여 리포지토리 전체에서 검색을 구체화하는 방법을 설명합니다.
필수 구성 요소
범주 | 전제 조건 |
---|---|
액세스 수준 | - 코드 검색을 사용하려면, 최소 기본 액세스. - 프라이빗 프로젝트의 코드에 액세스하려면: 최소 기본 액세스. 관련자 액세스에는 코드가 포함되지 않습니다. - 공용 프로젝트의 코드에 액세스하려면: 적어도 관련자 액세스. |
검색 결과 | 액세스 기반 결과: 조직 또는 컬렉션에서 검색하는 경우 프로젝트 멤버가 액세스할 수 있는 결과만 나열됩니다. |
범주 | 요구 사항 |
---|---|
액세스 수준 | - 코드 검색을 사용하려면, 최소 기본 액세스. - 프라이빗 프로젝트의 코드에 액세스하려면: 최소 기본 액세스. 관련자 액세스에는 코드가 포함되지 않습니다. |
검색 결과 | 액세스 기반 결과: 조직 또는 컬렉션에서 검색하는 경우 프로젝트 멤버가 액세스할 수 있는 결과만 나열됩니다. |
도구 | 코드 검색 확장 프로그램 |
코드 검색 모범 사례
- 광범위하게 시작: 광범위한 검색으로 시작한 다음 필터 연산자를 사용하여 프로젝트, 리포지토리, 경로, 파일 이름 등을 통해 범위를 좁힐 수 있습니다.
- 와일드카드 및 부울 연산자사용: 정확한 용어를 모르는 경우 와일드카드를 사용하여 검색 및 부울 연산자를 확장하여 구체화합니다.
- 마우스로 가리키기: 코드 항목에 대한 자세한 내용을 보려면 마우스로 가리키고 바로 가기 메뉴를 사용하여 모든 프로젝트 및 파일에서 해당 텍스트를 검색합니다.
- 코드 기능 추적: 바로 가기 메뉴를 사용하여 파일 또는 검색 결과에서 정의 및 참조와 같은 관련 항목을 검색하여 코드 작동 방식을 추적합니다.
-
코드 형식 필터 사용: API 또는 다른 코드 요소의 구현을 찾으려면 코드 형식 필터를 사용하여 다음과 같은 특정 종류의 코드를 검색합니다.
- 정의
- 참조
- 함수
- 코멘트
- 현악기들
- 네임스페이스 등
메모
포크된 리포지토리에는 코드 검색이 작동하지 않습니다.
특정 형식의 코드를 찾는 함수
쿼리를 더 빠르게 만들려면 텍스트를 입력할 때 드롭다운 목록에서 함수 및 키워드를 선택합니다. 더 많은 표시를 선택하여 모든 옵션을 확인해 보세요. 필요에 따라 다른 함수를 결합할 수 있습니다.
왼쪽 열의 필터를 사용하여 검색 범위를 좁힐 수도 있습니다. 더 많은 표시하면 모든 함수와 키워드가 표시됩니다.
또는 검색 상자에 함수 및 매개 변수를 입력할 수 있습니다. 다음 표에서는 C#, C, C++, Java 및 Visual Basic.NET 코드에서 특정 형식 또는 멤버를 찾기 위한 함수를 나열합니다.
코드에서 findThis이 ...로 나타나는 부분을 찾으려면 | ... 인수 인수 찾기:찾기 |
---|---|
논쟁 |
인수:findThisDeprecated in July 2019 |
기본 형식 | basetype:findThis |
호출 함수 |
호출자:findThisDeprecated in July 2019 |
클래스 정의 또는 선언 | 클래스:findThis |
클래스 선언 | ko-KR: classdecl:findThisMerged with class: |
클래스 정의 |
classdef:findThisMerged with class: |
주석 | 설명:findThis |
생성자 |
ctor:findThisMerged with method: |
선언 | decl:findThis |
정의 | def:findThis |
소멸자 |
dtor:findThisMerged with method: |
열거자 | 열거형:findThis |
외부 |
extern:findThisDeprecated in July 2019 |
필드 | 필드:findThis |
프렌드 함수 |
친구:찾기Deprecated in July 2019 |
기능 |
func:findThisMerged with method: |
함수 선언 |
funcdecl:findThisMerged with method: |
함수 정의 |
funcdef:findThisMerged with method: |
글로벌 |
전역:이것을 찾기Deprecated in July 2019 |
머리글 |
헤더:findThisDeprecated in July 2019 |
인터페이스 | 인터페이스:findThis |
매크로 | 매크로:findThis |
매크로 정의 |
macrodef:findThisMerged with macro: |
매크로 참조 |
macroref:findThisMerged with macro: |
메서드 | 메서드:findThis |
메서드 선언 |
methoddecl:findThisMerged with method: |
메서드 정의 |
methoddef:findThisMerged with method: |
Namespace | 네임스페이스:findThis |
재산 | prop:findThis |
참조 | ref:findThis |
문자열 리터럴 | strlit:findThis |
구조체 |
구조체:findThisMerged with type: |
구조체 선언 |
structdecl:findThisMerged with type: |
구조체 정의 |
구조체:findThisMerged with type: |
템플릿 인수 |
tmplarg:findThisDeprecated in July 2019 |
템플릿 사양 |
tmplspec:findThisDeprecated in July 2019 |
유형 | 형식:findThis |
Typedef (타입 정의) |
typedef:findThisMerged with type: |
연합 |
공용 구조체:찾기Deprecated in July 2019 |
프로젝트, 리포지토리, 경로 및 파일을 선택하는 함수
함수를 사용하면 지정된 위치, 이러한 위치 내의 특정 형식의 파일 또는 지정된 파일 이름으로 검색 범위를 쉽게 좁힐 수 있습니다.
proj
, repo
또는 path
필터를 사용하여 검색 범위를 특정 위치로 좁힐 수 있습니다. 필요에 따라 다음 함수들을 혼합하고 조합하십시오.
사용량 | 예제 |
---|---|
Fabrikam 프로젝트에서 QueueJobsNow 단어의 모든 발생을 찾습니다. | QueueJobsNow proj:Fabrikam |
Contoso 리포지토리에서 QueueJobsNow 단어의 모든 항목을 찾습니다. | QueueJobsNow repo:Contoso |
VisualStudio/Services/Framework 경로와 그 하위 경로에서 QueueJobsNow 단어의 모든 발생을 찾습니다. | QueueJobsNow path:VisualStudio/Services/Framework |
경로 */Doc*/Framework/* 및 */Doc*/*/*/Framework/* 및 해당 하위 경로에서 단어 QueueJobsNow의 모든 항목을 찾습니다. 글로빙 패턴(**)은 여러 세그먼트에서 0개 이상의 문자와 일치합니다. 예를 들어 path:**/Doc**/Framework는 abc/DocTest/gh/ijk/mnop/Framework/ 일치합니다. | QueueJobsNow path:**/Doc**/Framework |
경로 */Doc*/Framework/* 및 해당 하위 경로와 파일 이름 Test*.txt에서 단어 QueueJobsNow의 모든 항목을 찾습니다(글로빙 패턴 **를 사용). 예를 들어 path:**/Doc**/Framework/**/Test*.txt abc/def/DocA/gh/Framework/TestMisc와 일치합니다.txt | QueueJobsNow path:**/Doc**/Framework/**/Test*.txt |
공백이 포함된 경우 인수를 필터에 큰따옴표로 묶습니다. | QueueJobsNow path:"VisualStudio/Windows Phones and Devices/Services" |
파일 이름이 queueRegister시작하는 모든 파일에서 QueueJobsNow 단어의 모든 항목을 찾습니다. | QueueJobsNow file:queueRegister* |
이름이 QueueRegister이고 확장명이 없는 모든 파일을 찾습니다. 따옴표를 사용하여 확장 프로그램이 없는 파일을 찾습니다. | file:"queueRegister" |
C# 원본 파일에서만 QueueJobsNow 단어의 모든 항목을 찾습니다. 파일 형식 함수를 포함하지 않는 일반 텍스트 검색 문자열은 문자열이 파일 이름의 일부와 일치하는 파일도 찾습니다. | QueueJobsNow ext:cs |
관련 항목 또는 기타 용어 찾기
코드 검색을 사용하면 이전 결과에 따라 검색을 대화형으로 확장할 수 있습니다. 예를 들어 코드를 추적하거나 디버깅할 때 검색을 관련 파일로 확장할 수 있습니다.
파일에서 용어를 마우스 오른쪽 단추로 클릭하고 동일한 용어로 다른 파일에 대한 새 검색을 시작합니다. 텍스트로 검색하거나 개체 이름인 경우 정의 또는 참조로 검색할 수 있습니다.
자세한 내용은 검색 시작하기를 참조하세요.
추가 코드 검색 작업
다음은 몇 가지 코드 검색 함수입니다. C#, C, C++, Java 및 Visual Basic.NET 파일에서 코드 형식을 검색할 수 있습니다. 새 탭에서 검색 결과를 열려면 기본 검색 상자에서 Ctrl + Enter 선택합니다. Google Chrome에서 새 탭으로 전환하려면 Ctrl + + 선택합니다.
사용량 | 예제 |
---|---|
모든 메모 찾기 | 역사:키워드 |
코드에서 "ToDo" 주석의 모든 인스턴스 찾기 |
comment: 선택하고 todo 입력합니다. |
특정 경로 내와 같은 특정 위치에서 검색 |
Driver path:MyShuttle/Server 같은 검색 문자열 사용 |
이름 또는 파일 확장명별 파일 검색 |
Driver file:GreenCabs.cs . 코드의 모든 오류 문자열을 검토하려는 경우 검색 문자열 error ext:resx 유용할 수 있습니다. 일반 텍스트 검색 문자열이 파일 이름의 일부와 일치하더라도 파일은 찾은 파일 목록에 표시됩니다. 이 검색은 특정 파일 형식 함수와 일치하지 않고 작동합니다. |
Git 프로젝트 및 리포지토리 검색
Git 프로젝트에는 리포지토리 목록이 있습니다. 검색을 확장하려면 프로젝트 및 리포지토리 상자를 선택합니다. 모든 프로젝트 또는 더 적은 프로젝트 및 리포지토리를 검색할 수 있습니다. 많은 프로젝트나 리포지토리가 있는 경우, 더 보기를 선택하여 모두 확인할 수 있습니다.
코드 검색은 Git 리포지토리의 여러 분기를 인덱싱할 수 있습니다. 기본적으로 Git 리포지토리의 기본 분기에 있는 파일만 인덱싱합니다. 기본 분기는 main입니다. 다른 분기를 인덱싱하려면 프로젝트 설정 페이지리포지토리 섹션의 옵션 탭으로 이동합니다.
메모
기본적으로 코드 검색은 리포지토리의 기본 또는 기본 분기에서 지정된 문자열을 찾습니다. 그러나 특정 분기에 대한 필터를 지정하여 검색 범위를 좁힐 수 있습니다.
TFVC 프로젝트 검색
TFVC(Team Foundation Version Control) 프로젝트는 읽을 수 있는 폴더만 표시합니다. 다른 프로젝트나 폴더는 볼 수 없습니다. 검색을 필터링하려면 트리에서 폴더를 선택합니다.
팁
코드 검색은 검색한 프로젝트, 리포지토리 또는 경로와 같은 마지막 설정을 저장합니다. 다른 범위에서 검색하려면 모든 링크 지우기를 선택하여 확인란의 선택을 취소하고 모든 프로젝트에서 검색합니다. 대상 파일에서 처음 100개의 일치 항목은 코드 검색에 의해 결과 창에서 강조 표시됩니다.
REST API를 사용하여 코드 검색
API를 사용하여 이 문서에 나열된 기능을 확장하거나 보완할 수 있습니다. REST API를 사용한 코드 검색에 대한 자세한 내용은 코드 검색 결과 가져오기참조하세요.