Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
Visual Studio 2019 | Visual Studio 2022
Git은 부모 링크, 작성자 세부 정보 및 타임스탬프와 같은 커밋 메타데이터를 사용하여 리포지토리에서 변경 내용의 기록을 추적합니다. Git 기록을 검토하여 파일이 변경된 시기, 변경한 사람 및 변경된 내용을 확인할 수 있습니다.
사용자가 끌어오기 요청을 사용하여 기능 분기를 만들고 대상 분기에 병합할 때 대상 분기의 개발 기록은 직선 시간순이 아닐 수 있습니다. 따라서 대상 분기의 파일 변경 기록을 검토할 때 커밋 순서는 변경 내용의 원래 날짜뿐만 아니라 병합 전략 및 병합 날짜의 영향을 받습니다. 예를 들어 분기의 가장 최근 커밋 main 은 3방향 병합을 사용하여 분기에 병합 main 된 기능 분기 몇 주 전에 변경된 내용을 도입할 수 있습니다.
Azure DevOps 팀 프로젝트 사이트를 사용하면 동일한 분기의 커밋에서 동일한 파일의 두 버전을 비교할 수 있지만 분기 간 파일 버전 비교는 지원하지 않습니다.
웹 브라우저에서 Azure DevOps 조직의 팀 프로젝트를 엽니다. 리포지토리 > 파일 보기에서 파일을 선택하고 비교 탭을 선택합니다.
비교 탭에서 비교할 파일 버전이 포함된 두 커밋을 선택합니다. diff 보기에는 새 파일 줄, 삭제됨 또는 수정된 파일 줄이 표시됩니다.
참고 항목
GitHub를 사용하면 서로 다른 분기의 서로 다른 커밋에서 동일한 파일의 두 버전을 비교할 수 있습니다. 비교하려면 GitHub 리포지토리 URL에 추가하여 /compare/<commit1>..<commit2> 비교 페이지로 이동합니다. 비교 페이지에는 서로 다른 각 파일의 차이 보기가 포함되어 있습니다. GitHub의 커밋 비교에 대한 자세한 내용은 커밋 비교를 참조 하세요.
Visual Studio 2022는 Git 메뉴, Git 변경 내용 및 솔루션 탐색기 상황에 맞는 메뉴를 사용하여 Git 버전 제어 환경을 제공합니다. Visual Studio 2019 버전 16.8은 팀 탐색기 Git 사용자 인터페이스도 제공합니다. 자세한 내용은 Visual Studio 2019 - 팀 탐색기 탭을 참조하세요.
Visual Studio를 사용하면 동일한 분기에 있는 동일한 파일의 두 버전을 비교할 수 있지만 분기 간 파일 버전 비교는 지원하지 않습니다.
솔루션 탐색기 파일을 선택하고 파일의 상황에 맞는 메뉴에서 Git > 보기 기록을 선택하여 선택한 파일에 대한 Git 기록 탭을 엽니다.
Git 기록 탭의 커밋 상황에 맞는 메뉴에서 이전과 비교를 선택하여 선택한 커밋과 이전 커밋을 비교하는 Diff 탭을 엽니다.
또는 두 커밋을 선택하고 커밋의 상황에 맞는 메뉴에서 비교를 선택하여 선택한 두 커밋을 비교하는 Diff 탭을 엽니다.
Diff 탭에는 새 파일 줄, 삭제됨 또는 수정된 파일 줄이 표시됩니다.
Visual Studio 2019는 Git 메뉴, Git 변경 내용 및 솔루션 탐색기 상황에 맞는 메뉴를 사용하여 Git 버전 제어 환경을 제공합니다.
Visual Studio를 사용하면 동일한 분기에 있는 동일한 파일의 두 버전을 비교할 수 있지만 분기 간 파일 버전 비교는 지원하지 않습니다.
솔루션 탐색기 파일을 선택하고 파일의 상황에 맞는 메뉴에서 Git > 보기 기록을 선택하여 선택한 파일에 대한 Git 기록 탭을 엽니다.
Git 기록 탭의 커밋 상황에 맞는 메뉴에서 이전과 비교를 선택하여 선택한 커밋과 이전 커밋을 비교하는 Diff 탭을 엽니다.
또는 두 커밋을 선택하고 커밋의 상황에 맞는 메뉴에서 비교를 선택하여 선택한 두 커밋을 비교하는 Diff 탭을 엽니다.
Diff 탭에는 새 파일 줄, 삭제됨 또는 수정된 파일 줄이 표시됩니다.
팀 탐색기는 이 기능을 지원하지 않습니다.
git diff 명령은 서로 다른 분기에서 서로 다른 커밋과 동일한 파일의 다른 버전을 비교할 수 있습니다. git 로그 명령은 비교할 파일 버전이 포함된 커밋을 식별하는 데 도움이 될 수 있습니다.
파일을 사용하여 git log 파일을 변경한 커밋을 나열합니다.
git log <file>
기본적으로 명령 출력은 현재 분기에서 가장 최근 커밋으로 시작한 다음 각 커밋의 메타데이터에 있는 부모 링크를 따라 상위 커밋(분기에 관계 없이)을 반복합니다.
git log --abbrev-commit는 약어 ID(SHA-1 검사sum)를 사용하여 커밋을 나열합니다.
git log --oneline 는 각 커밋을 한 줄 약어 형식으로 나열합니다.
git log --patch index.html 는 변경 내용의 차이와 함께 각 커밋을 나열합니다.
파일 복원
이후 커밋에서 파일이 편집, 삭제 또는 이름이 변경된 경우에도 Git 기록에서 특정 버전의 파일을 복원할 수 있습니다. 이전 버전의 파일을 복원해도 변경 내용이 포함된 새 커밋이 만들어지지는 않습니다. 복원된 파일 버전으로 분기를 업데이트하려면 변경 내용을 커밋해야 합니다.
로컬 또는 원격 분기를 비교하여 병합 또는 다시베이스로 인해 발생하는 변경 내용을 검토할 수 있습니다. 분기 비교를 통해 병합 충돌 대한 검사 다른 사용자의 변경 내용이 작업에 어떤 영향을 미치는지 확인할 수 있습니다.
Visual Studio 2019 및 이전 버전은 분기 비교를 지원하지 않으므로 이러한 버전 중 하나를 사용하는 경우 리포지토리가 Azure Repos 또는 GitHub에서 호스트되는 경우 Git 명령줄 또는 웹 브라우저에서 비교 분기 수 있습니다. Visual Studio 2022는 비교 분기에 설명된 대로 분기 비교를 지원합니다.
웹 브라우저에서 Azure DevOps 조직의 팀 프로젝트를 엽니다. 리포지토리 > 분기 보기에서 모든 분기에 대한 줄임표를 선택하고 분기 비교를 선택하여 분기 비교 보기를 엽니다.
분기 비교 보기에서 비교할 두 분기를 선택합니다. 변경된 각 파일에서 새 줄, 삭제됨 또는 수정된 줄의 차이 보기에 대한 파일 탭을 선택합니다.
참고 항목
GitHub는 분기 비교를 지원합니다. 두 분기를 비교하려면 GitHub 리포지토리 URL에 추가하여 /compare/<branch1>...<branch2> 비교 페이지로 이동합니다. 비교 페이지에는 서로 다른 각 파일의 차이 보기가 포함되어 있습니다. GitHub의 분기 비교에 대한 자세한 내용은 분기 비교를 참조하세요.
분기를 현재 분기와 비교하려면 리포지토리의 분기 창에서 분기를 마우스 오른쪽 단추로 클릭한 다음 비교 옵션을 선택합니다. 상황에 맞는 메뉴는 현재 분기와 대상 분기의 이름을 지정합니다.
Visual Studio 2019는 분기 비교를 지원하지 않습니다. 그러나 리포지토리가 Azure Repos 또는 GitHub에서 호스트되는 경우 Git 명령줄 또는 웹 브라우저를 사용하여 비교 분기 수 있습니다.
팁
웹 포털을 선택하여 팀 탐색기 홈 보기에서 웹 포털에 액세스할 수 있습니다.
Visual Studio 2019는 분기 비교를 지원하지 않습니다. 그러나 리포지토리가 Azure Repos 또는 GitHub에서 호스트되는 경우 Git 명령줄 또는 웹 브라우저를 사용하여 비교 분기 수 있습니다.
팁
웹 포털을 선택하여 팀 탐색기 홈 보기에서 웹 포털에 액세스할 수 있습니다.
두 개의 로컬 분기 또는 원격 분기를 비교하려면 분기 이름을 지정하는 Git diff 명령을 사용할 수 있습니다.
git diff <branch1> <branch2>
Git은 한 분기의 끝에 있는 커밋과 다른 분기의 끝에 있는 커밋을 비교합니다. diff 출력에는 두 분기의 각 파일 간의 삭제 및 추가가 표시됩니다.
다음은 로컬 분기와 원격 분기를 비교하는 명령에 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 .