VS Code의 소스 제어
Visual Studio Code는 Git 및 기타 버전 관리 시스템을 편집기에서 직접 작업할 수 있는 통합 소스 제어 관리(SCM) 기능을 제공합니다. Git 지원은 내장되어 있으며, Visual Studio Marketplace에서 다른 SCM 공급자에 대한 확장을 설치할 수 있습니다.
통합 소스 제어 인터페이스는 터미널 명령 대신 그래픽 인터페이스를 통해 Git 기능에 액세스할 수 있도록 합니다. 명령줄로 전환하지 않고도 변경 내용 스테이징, 파일 커밋, 브랜치 생성, 병합 충돌 해결과 같은 Git 작업을 수행할 수 있습니다.
VS Code 인터페이스에서 수행한 변경 내용은 명령줄 Git 작업과 동기화되므로 필요에 따라 UI와 터미널을 모두 사용할 수 있습니다. 소스 제어 인터페이스는 이를 대체하는 것이 아니라 명령줄과 함께 작동합니다.
전제 조건
VS Code에서 Git 기능을 사용하려면
-
VS Code는 컴퓨터의 Git 설치를 사용합니다. 컴퓨터에 Git 버전 2.0.0 이상을 설치하십시오.
-
변경 내용을 커밋할 때 Git은 구성된 사용자 이름과 이메일을 사용합니다. 다음 명령으로 이러한 값을 설정할 수 있습니다.
git config --global user.name "Your Name" git config --global user.email "your.email@example.com"
리포지토리 시작하기
VS Code는 Git 리포지토리인 폴더를 열면 자동으로 감지하고 모든 소스 제어 기능을 활성화합니다. 새 리포지토리 또는 기존 리포지토리로 시작하는 몇 가지 옵션이 있습니다.
-
새 리포지토리 초기화: 현재 폴더에 대한 새 Git 리포지토리를 만듭니다.
-
리포지토리 복제: GitHub 또는 다른 Git 호스트에서 기존 리포지토리를 복제합니다.
-
원격 리포지토리 열기: GitHub Repositories 확장을 사용하여 로컬 컴퓨터에 복제하지 않고 리포지토리와 작업합니다.
로컬 리포지토리를 **GitHub에 게시** 명령을 사용하여 GitHub에 직접 게시할 수 있습니다. 이 명령은 새 리포지토리를 만들고 커밋을 한 번에 푸시합니다.
리포지토리 복제 및 게시에 대해 자세히 알아보세요.
소스 제어 인터페이스
VS Code는 여러 주요 인터페이스 요소를 통해 Git 기능을 제공합니다. 이 UI 통합을 통해 터미널 명령을 알지 못해도 Git 작업을 수행할 수 있습니다.
-
소스 제어 보기: 스테이징, 커밋, 변경 내용 관리와 같은 일반적인 Git 작업을 위한 중앙 허브

-
소스 제어 그래프: 커밋 기록 및 브랜치 관계의 그래픽 표현

-
Diff 편집기: 효과적인 변경 검토를 위한 나란히 파일 비교

-
추가 UI 요소: 편집기 여백 표시기 또는 Git Blame 주석과 같은 인컨텍스트 Git 정보

일반적인 워크플로
커밋 전 변경 내용 검토
변경 내용을 커밋하기 전에 정확성과 품질을 보장하기 위해 검토하는 것이 중요합니다. VS Code의 AI 기능을 사용하여 변경 내용에 대한 코드 검토를 수행하고 편집기에서 검토 댓글 및 제안을 받으십시오.

변경 내용 스테이징 및 커밋
소스 제어 보기에서 변경 내용을 검토한 다음, 각 파일 옆의 **+** 아이콘을 선택하여 파일을 스테이징하거나 모든 변경 내용을 한 번에 스테이징합니다. 더 세밀하게 제어하려면 파일의 diff 보기에서 특정 줄 또는 선택 항목을 스테이징합니다.

입력란에 커밋 메시지를 입력하거나, 커밋 메시지 입력란의 스파클 아이콘()을 선택하여 스테이징된 변경 내용을 기반으로 커밋 메시지를 생성하는 AI를 사용합니다.

변경 내용 스테이징 및 커밋 작성에 대해 자세히 알아보세요.
원격과 동기화
브랜치가 원격 브랜치에 연결되어 있으면 VS Code는 상태 표시줄에 동기화 상태를 표시하고 소스 제어 보기에서 수신 및 발신 커밋을 표시합니다. 빠르게 동기화하거나 개별 페치, 풀, 푸시 작업을 수행할 수 있습니다.

리포지토리 및 원격 작업에 대해 자세히 알아보세요.
병합 충돌 해결
병합 충돌이 발생하면 VS Code는 소스 제어 보기에서 충돌하는 파일을 강조 표시합니다. 충돌이 있는 파일을 열면 인라인 충돌 마커가 표시됩니다. 충돌을 해결할 수 있는 몇 가지 옵션이 있습니다.
- 인라인 편집기 작업을 사용하여 편집기에서 직접 충돌을 해결하는 방법을 선택합니다.
- 3방향 병합 편집기를 사용하여 변경 내용과 병합 결과의 나란히 보기를 사용합니다.
- AI 지원을 사용하여 병합 충돌 해결을 돕습니다.

병합 충돌 해결에 대해 자세히 알아보세요.
브랜치, 작업 트리, 스테이시 작업
VS Code는 병렬 개발 작업을 관리하기 위한 여러 워크플로를 지원합니다.
-
브랜치 간에 빠르게 전환하여 다른 기능 또는 수정 사항을 작업합니다.

-
Git **작업 트리**를 사용하여 다른 브랜치에 대한 별도의 작업 디렉터리를 만들어 여러 브랜치를 동시에 작업합니다.
-
Git **스테이시**를 사용하여 컨텍스트를 빠르게 전환해야 할 때 커밋되지 않은 변경 내용을 임시로 저장합니다.
브랜치 및 작업 트리 작업에 대해 자세히 알아보세요.
커밋 기록 보기
시간이 지남에 따라 코드가 어떻게 변경되었는지 이해하기 위해 커밋 기록을 검토하는 것이 도움이 될 수 있습니다.
-
**소스 제어 그래프**는 브랜치 구조 및 커밋 기록의 시각적 표현을 제공하며 수신 및 발신 커밋을 강조 표시합니다.

-
탐색기 보기의 **타임라인 보기**는 특정 파일의 커밋 기록을 표시하여 파일의 변화를 확인할 수 있습니다. 타임라인을 필터링하여 Git 커밋만 표시하거나 로컬 파일 변경 내용을 포함하도록 할 수 있습니다.

그래프 및 타임라인 보기 사용 및 변경 내용 검토에 대해 자세히 알아보세요.
GitHub 풀 리퀘스트 및 이슈 작업
VS Code는 GitHub와 통합되어 편집기에서 직접 풀 리퀘스트 및 이슈 관리를 제공합니다. GitHub Pull Requests and Issues 확장을 설치하여 다음을 수행하십시오.
- 풀 리퀘스트 생성, 검토 및 병합
- 이슈 보기 및 관리
- VS Code를 벗어나지 않고 PR에 댓글 달기 및 승인
- PR 브랜치를 체크아웃하고 변경 내용을 로컬에서 검토
VS Code에서 GitHub 작업에 대해 자세히 알아보세요.
기타 소스 제어 공급자
VS Code는 여러 소스 제어 공급자를 지원합니다. Git 지원은 내장되어 있지만 Azure DevOps, Subversion 또는 Mercurial과 같은 다른 버전 관리 시스템에 대한 확장을 설치할 수 있습니다.
확장 보기(⇧⌘X (Windows, Linux Ctrl+Shift+X))에서 @category:"scm providers"를 검색하여 사용 가능한 SCM 공급자 확장을 찾아보세요.
다음 단계
-
소스 제어 빠른 시작 - VS Code에서 Git 소스 제어 빠르게 시작하기
-
소개 동영상 - Git 버전 관리 - VS Code Git 지원 개요를 제공하는 소개 동영상
-
브랜치 및 작업 트리 - 브랜치 관리, Git 작업 트리 및 스테이시 작업에 대해 알아보기
-
리포지토리 및 원격 - 복제, 게시 및 원격 리포지토리와의 동기화에 대해 알아보기
-
GitHub 작업 - VS Code에서 풀 리퀘스트 및 이슈 작업 방법에 대해 알아보기
-
문제 해결 - 출력 로그 및 추적 로깅을 사용하여 Git 문제 진단 및 해결
-
VS Code의 Copilot - Git 워크플로를 넘어선 AI 기반 기능 더 알아보기