Linux 용 Windows 하위 시스템에서 Git 사용 시작Get started using Git on Windows Subsystem for Linux

Git은 가장 일반적으로 사용 되는 버전 제어 시스템입니다.Git is the most commonly used version control system. Git를 사용 하면 파일에 대 한 변경 내용을 추적할 수 있으며,이를 통해 수행 된 작업에 대 한 기록이 제공 되며 필요한 경우 이전 버전의 파일로 되돌릴 수 있습니다.With Git, you can track changes you make to files, so you have a record of what has been done, and have the ability to revert to earlier versions of the files if needed. 또한 Git를 사용 하면 공동 작업을 더 쉽게 수행할 수 있으므로 여러 사람이 변경한 내용을 하나의 원본으로 병합할 수 있습니다.Git also makes collaboration easier, allowing changes by multiple people to all be merged into one source.

Git은 Windows 및 WSL에 설치할 수 있습니다.Git can be installed on Windows AND on WSL

중요 한 고려 사항: WSL을 사용 하도록 설정 하 고 Linux 배포를 설치 하는 경우 Windows NTFS C:\에서 분리 된 새 파일 시스템을 설치 하 게 됩니다. 컴퓨터의 드라이브입니다.An important consideration: when you enable WSL and install a Linux distribution, you are installing a new file system, separated from the Windows NTFS C:\ drive on your machine. Linux에서 드라이브에는 문자가 제공 되지 않습니다.In Linux, drives are not given letters. 지정 된 탑재 지점이 있습니다.They are given mount points. 파일 시스템의 루트는 / WSL의 경우 루트 파티션 또는 폴더의 탑재 지점입니다.The root of your file system / is the mount point of your root partition, or folder, in the case of WSL. 의 모든 항목이 / 동일한 드라이브는 아닙니다.Not everything under / is the same drive. 예를 들어 내 노트북에서 Debian 뿐만 아니라 Ubuntu (20.04 및 18.04)의 두 가지 버전을 설치 했습니다.For example, on my laptop, I've installed two version of Ubuntu (20.04 and 18.04), as well as Debian. 이러한 배포를 열고 명령을 사용 하 여 루트 디렉터리를 선택한 cd ~ 후 명령을 입력 하면 explorer.exe . Windows 파일 탐색기가 열리고 해당 배포에 대 한 디렉터리 경로가 표시 됩니다.If I open those distributions, select the root directory with the command cd ~, and then enter the command explorer.exe ., Windows File Explorer will open and show me the directory path for that distribution.

Linux 배포판Linux distro 홈 폴더에 액세스 하기 위한 Windows 경로Windows Path to access home folder
Ubuntu 20.04Ubuntu 20.04 \\wsl$\Ubuntu-20.04\home\username
Ubuntu 18.04Ubuntu 18.04 \\wsl$\Ubuntu-18.04\home\username
DebianDebian \\wsl$\Debian\home\username
Windows PowerShellWindows PowerShell C:\Users\username

를 사용 하 여 windows 파일 디렉터리에 액세스 하려는 경우에는 대신 C:\Users\username 를 사용 하 여 디렉터리에 액세스할 수 있습니다 /mnt/c/Users/username . Linux 배포에서는 windows 파일 시스템을 탑재 된 드라이브로 보기 때문입니다.If you are seeking to access the Windows file directory from your WSL distribution command line, instead of C:\Users\username, the directory would be accessed using /mnt/c/Users/username, because the Linux distribution views your Windows file system as a mounted drive.

에서 사용 하려는 각 파일 시스템에 Git을 설치 해야 합니다.You will need to install Git on each file system that you intend to use it with.

배포판 Git 버전 표시

Git 설치Installing Git

Git는 Linux 배포판에 대 한 대부분의 Windows 하위 시스템에 이미 설치 되어 있지만 최신 버전으로 업데이트 하는 것이 좋습니다.Git comes already installed with most of the Windows Subsystem for Linux distributions, however, you may want to update to the latest version. 또한 git 구성 파일을 설정 해야 합니다.You also will need to set up your git config file.

Git를 설치 하려면 Linux 용 Git 다운로드 사이트를 참조 하세요.To install Git, see the Git Download for Linux site. 각 Linux 배포에는 자체 패키지 관리자와 install 명령이 있습니다.Each Linux distribution has their own package manager and install command.

Ubuntu/Debian에서 안정적인 최신 GIt 버전의 경우 다음 명령을 입력 합니다.For the latest stable GIt version in Ubuntu/Debian, enter the command:

sudo apt-get install git

참고

아직 없는 경우 Windows 용 Git를 설치할 수도 있습니다.You also may want to install Git for Windows if you haven't already.

Git 구성 파일 설정Git config file setup

Git 구성 파일을 설정 하려면 작업 중인 배포에 대 한 명령줄을 열고 이름을이 명령으로 설정 합니다 ("your Name"을 Git 사용자 이름으로 대체).To set up your Git config file, open a command line for the distribution you're working in and set your name with this command (replacing "Your Name" with your Git username):

git config --global user.name "Your Name"

이 명령을 사용 하 여 전자 메일을 설정 youremail@domain.com 합니다 (""을 Git 계정에서 사용 하는 전자 메일로 바꿉니다).Set your email with this command (replacing "youremail@domain.com" with the email you use on your Git account):

git config --global user.email "youremail@domain.com"

아직 Git 계정이 없으면 GitHub에서 가입할 수 있습니다.If you don't yet have a Git account, you can sign-up for one on GitHub. 이전에 Git를 사용한 경험이 없는 경우 GitHub 가이드를 보면 시작하는 데 도움이 될 수 있습니다.If you've never worked with Git before, GitHub Guides can help you get started. git config를 편집해야 하는 경우 nano: nano ~/.gitconfig와 같은 기본 제공 텍스트 편집기를 사용하여 편집할 수 있습니다.If you need to edit your git config, you can do so with a built-in text editor like nano: nano ~/.gitconfig.

2 단계 인증 (2FA)을 사용 하 여 계정을 보호하는 것이 좋습니다.We recommend that you secure your account with two-factor authentication (2FA).

Git 자격 증명 관리자 설치Git Credential Manager setup

Git 자격 증명 관리자를 사용 하면 2 단계 인증, Azure Active Directory 등의 복잡 한 인증 패턴이 있거나 모든 git 푸시에 대해 SSH 키 암호가 필요한 SSH 원격 Url을 사용 하는 경우에도 원격 Git 서버를 인증할 수 있습니다.Git Credential Manager enables you to authenticate a remote Git server, even if you have a complex authentication pattern like two-factor authentication, Azure Active Directory, or using SSH remote URLs that require an SSH key password for every git push. Git 자격 증명 관리자는 GitHub와 같은 서비스의 인증 흐름에 통합되며, 사용자가 호스팅 공급자에 인증되면 새 인증 토큰을 요청합니다.Git Credential Manager integrates into the authentication flow for services like GitHub and, once you're authenticated to your hosting provider, requests a new authentication token. 그런 다음 Windows 자격 증명 관리자에 안전 하 게 토큰을 저장 합니다.It then stores the token securely in the Windows Credential Manager. 처음 인증하고 나면 다시 인증할 필요 없이 Git을 사용하여 호스팅 공급자와 통신할 수 있습니다.After the first time, you can use git to talk to your hosting provider without needing to re-authenticate. Git이 Windows 자격 증명 관리자의 토큰에 액세스할 것입니다.It will just access the token in the Windows Credential Manager.

WSL 배포판과 함께 사용할 Git 자격 증명 관리자를 설정하려면 배포판을 열고 다음 명령을 입력합니다.To set up Git Credential Manager for use with a WSL distribution, open your distribution and enter this command:

git config --global credential.helper "/mnt/c/Program\ Files/Git/mingw64/libexec/git-core/git-credential-manager.exe"

이제 사용자가 WSL 배포판 내에서 수행하는 모든 Git 작업에서 자격 증명 관리자를 사용합니다.Now any git operation you perform within your WSL distribution will use the credential manager. 호스트용으로 캐시된 자격 증명이 이미 있는 경우 자격 증명 관리자에서 액세스됩니다.If you already have credentials cached for a host, it will access them from the credential manager. 그렇지 않다면 자격 증명을 요청하는 대화 상자 응답이 수신됩니다(Linux 콘솔에 있을 경우도).If not, you'll receive a dialog response requesting your credentials, even if you're in a Linux console.

참고

코드 서명 보안을 위해 GPG 키를 사용 하는 경우 GPG 키를 GitHub 메일과 연결해야 할 수 있습니다.If you are using a GPG key for code signing security, you may need to associate your GPG key with your GitHub email.

Git Ignore 파일 추가Adding a Git Ignore file

프로젝트에 .gitignore 파일 을 추가 하는 것이 좋습니다.We recommend adding a .gitignore file to your projects. GitHub는 사용 사례에 따라 구성 된 .gitignore 파일 설정이 .gitignore 템플릿 컬렉션을 제공 합니다.GitHub offers a collection of useful .gitignore templates with recommended .gitignore file setups organized according to your use-case. 예를 들어 Node.js 프로젝트에 대 한 GitHub의 기본 .gitignore 템플릿이여기에 나와 있습니다.For example, here is GitHub's default gitignore template for a Node.js project.

GitHub 웹 사이트를 사용 하 여 새 리포지토리를 만들도록선택 하는 경우 특정 프로젝트 형식에 대 한 추가 정보 파일,. .gitignore 파일 및 필요한 경우 라이선스를 추가 하는 옵션을 사용 하 여 리포지토리를 초기화 하는 데 사용할 수 있는 확인란이 있습니다.If you choose to create a new repo using the GitHub website, there are check boxes available to initialize your repo with a README file, .gitignore file set up for your specific project type, and options to add a license if you need one.

Git 및 VS CodeGit and VS Code

Visual Studio Code에는 변경 내용을 표시 하 고 다양 한 git 명령을 처리 하는 소스 제어 탭을 비롯 하 여 Git에 대 한 기본 제공 지원이 제공 됩니다.Visual Studio Code comes with built-in support for Git, including a source control tab that will show your changes and handle a variety of git commands for you. VS Code의 Git 지원에 대해 자세히 알아보세요.Learn more about VS Code's Git support.

Git 줄 끝Git line endings

Windows, WSL 또는 컨테이너와 동일한 리포지토리 폴더를 사용 하 여 작업 하는 경우 일관성 있는 줄 끝을 설정 해야 합니다.If you are working with the same repository folder between Windows, WSL, or a container, be sure to set up consistent line endings.

Windows 및 Linux는 서로 다른 기본 줄 끝을 사용 하기 때문에 Git은 줄 끝에서 차이가 없는 다 수의 수정 된 파일을 보고할 수 있습니다.Since Windows and Linux use different default line endings, Git may report a large number of modified files that have no differences aside from their line endings. 이 문제가 발생 하지 않도록 하려면 파일을 사용 하 여 줄 끝 변환을 사용 하지 않도록 설정 .gitattributes 하거나 Windows 쪽에서 전역적으로 변환을 사용 하지 않도록 설정할 수 있습니다.To prevent this from happening, you can disable line ending conversion using a .gitattributes file or globally on the Windows side. Git 줄 종료 문제를 해결 하는 방법에 대 한이 VS Code 문서를 참조 하세요.See this VS Code doc about resolving Git line ending issues.

추가 자료Additional resources