LainyZine: 프로그래머 가이드 🐣

[Windows 10] Git 최신 버전 설치 및 사용 방법

Git은 오픈소스로 개발되고 있는 분산 버전 관리 시스템(DVCS)입니다. 현재 가장 인기 있는 소스 코드 관리 도구로 윈도우, 리눅스, 맥 등의 메이저 OS를 모두 지원하고 있습니다.

이 글에서는 윈도우에서 Git을 설치하는 방밥과 기본적인 사용법을 소개합니다. Windows 10에서 Git을 설치하는 방법은 크게 공식 Git 인스톨러를 사용하는 방법과 Chocolatey 패키지 매니저를 사용하는 방법이 있습니다. Git 인스톨러를 사용하면 설치 시점에 상세한 설정이 가능하지만 생각보다 단계가 많고 복잡합니다. Chocotaley를 사용하면 좀 더 간편하게 Git을 설치할 수 있습니다만, 커맨드라인에 대한 최소한의 이해가 필요합니다.

목차를 참고해 두 방법 중 하나를 선택해서 진행해주세요.

윈도우 용 공식 Git 인스톨러 사용하기

윈도우용 Git 인스톨러를 사용해 Git을 설치할 수 있습니다. 설치 과정에서 세부 설정이 가능하다는 장점이 있습니다만, 그만큼 번거롭다는 단점이 있습니다. 커맨드라인에 익숙하다면 Chocolatey를 사용하는 방법도 고려해보시기 바랍니다. 명령어 하나면 Git이 설치 됩니다.

먼저 Git의 공식 웹 사이트에 방문합니다. 아래 링크로 공식 웹사이트에 접속해주세요.

현재 최신 버전을 확인할 수 있고, 윈도우용 인스톨러를 다운로드 받을 수 있습니다. Download for Windows 링크를 눌러 윈도우용 인스톨러 파일을 다운로드 받습니다.

Git 공식 웹사이트에서 인스톨러를 다운로드 합니다

링크를 클릭하면 다운로드 페이지로 이동하고 자동적으로 다운로드가 시작됩니다. 다운로드가 시작되지 않으면 ‘Click here to download manually’ 텍스트를 클릭해 파일을 다운로드 받아주세요. 최신 버전 Git 인스톨러 exe 파일이 다운로드 됩니다. 다운로드 팝업에서 바로 파일을 열거나, 다운로드 디렉터리를 열어 다운로드 받은 파일을 실행해주세요.

자동으로 다운로드가 시작됩니다

Git 설치는 관리자 권한을 필요로 합니다. 계속 설치하려면 사용자 계정 컨트롤 팝업에서 예를 클릭합니다.

계정 컨트롤을 허용해야 설치가 진행됩니다

Git 소프트웨어 라이센스에 대한 안내가 나타납니다. Next 버튼을 클릭해줍니다.

Git 라이센스 정보가 나타납니다

설치할 위치를 지정합니다. 여기서는 기본값인 c:\Program Files\Git을 그대로 사용하겠습니다.

설치 경로를 지정합니다

다음으로 설치할 컴포넌트 선택창이 나타납니다. 기본값을 사용해도 무방합니다만, 필요에 따라서 선택해주세요. 특별히 중요하게 다룰 옵션은 없어서 잘 모르겠다면 기본값을 사용하는 걸 추천합니다. Windows Terminal이 설치되어있다면 마지막 옵션인 Add a Git Bash Profile to Windows Terminal을 선택해줍니다. Next를 클릭합니다.

Git 컴포넌트 선택창

다음으로 Git에서 사용할 기본 에디터를 지정합니다. 예를 들어 Git에서는 Commit 메시지를 남길 때 자동으로 에디터 창을 열어주는 데, 이 때 사용할 에디터입니다. 기본적으로 Nano나 Vim 같은 에디터를 선택할 수도 있습니다만, 커맨드라인에 익숙하지 않다면 조작이 어려울 수 있습니다. 최근에는 Visual Studio Code를 메인 에디터로 많이 사용하는데, 미리 설치되어있다면 Visual Studio Code를 선택하는 걸 추천합니다. 단, 미리 설치 되어있지 않으면 선택이 안됩니다. 나중에 설정을 변경할 수 있으니 원하는 에디터가 없으면 Vim을 선택하고 Next를 클릭합니다.

Git에서 사용할 기본 에디터를 지정합니다

다음으로 기본 브랜치 명에 대한 설정이 나타납니다. 과거에는 기본 브랜치 명으로 master를 사용했습니다만, 현재는 main으로 변경되는 추세입니다. GitHub도 기본 브랜치명으로 main으로 바꿨으며, Git에서도 main으로 변경하는 옵션을 제공하고 있습니다.

‘Override the default branch name for new repositories’ 선택하고 값은 그대로 main을 지정하는 걸 추천합니다. Next를 클릭합니다.

기본 브랜치 이름을 지정합니다

Path 관련 설정입니다. 큰 고민 없이 추천 설정(Git from the command line and also from 3rd-party software)을 선택하겠습니다.

PATH 설정 화면

HTTPS 통신 백엔드를 설정합니다. 이 설정도 기본값(OpenSSL)을 사용하겠습니다. Next를 클릭합니다.

HTTPS 통신 백엔드 설정 화면

줄바꿈 스타일에 대한 설정입니다. 윈도우와 리눅스 간에 줄바꿈 처리 방식이 미묘하게 달라서 문제가 생기는 경우가 있습니다. 추천 설정값 Checkout Windows-sytle, commit Unix-style linu endings를 선택하고 Next를 클릭합니다.

줄바꿈 스타일 설정 화면

Git Bash 터미널 에뮬레이터 설정입니다. 기본값인 MinTTY를 선택하고 Next를 클릭합니다.

Git Bash 에뮬레이터 설정 화면

다음으로 git pull 명령어의 기본 동작을 설정합니다. 필요에 따라 옵션으로도 변경할 수 있기 때문이 기본값을 선택합니다.

git pull 기본 동작 설정 화면

다음으로 Git Credential Manager를 설정합니다. Credential Manager는 원격 저장소와 통신할 때 사용하는 비밀 정보를 관리하는 역할을 합니다. 자세한 내용은 다음 링크를 참고해주세요.

여기서는 기본값을 사용하겠습니다. Next를 클릭합니다.

Git Credential Manager 설정 화면

그 외에 추가 옵션(extra options)에 대한 설정이 이어지는데, 크게 중요한 내용은 아니므로 기본값을 선택하고 Next를 선택해줍니다. 여기까지 설정하면 드디어 Git 설치가 시작됩니다. Git 설치는 1~2분이면 끝납니다. Git 설치가 끝나면 설치 완료에 대한 안내가 나타납니다. Finish 버튼을 클릭해 인스톨러를 마칩니다.

Git 설치가 완료되었습니다

이제 Git Bash나 Windows Terminal(PowerShell)에서 Git을 사용할 수 있습니다.

Chocolatey로 Git 설치하는 방법

Git 인스톨러는 단계가 많아서 설치가 번거롭습니다만, 커맨드라인에 익숙하다면(!) 명령어 하나로 Git을 설치할 수 있습니다. 단, 시스템에 Chocolatey가 설치되어있어야합니다. 아래 문서를 참고해서 Chocolatey를 설치해주세요.

Chocolatey를 설치하고, Windows Terminal을 관리자 모드로 실행해주세요.

PowerShell 탭에서 choco install git 명령어를 실행하면 Git이 설치됩니다.

$ choco install git
Chocolatey v0.10.15
Installing the following packages:
git
By installing you accept licenses for the packages.
Progress: Downloading git.install 2.32.0.2... 100%
Progress: Downloading git 2.32.0.2... 100%
...
Do you want to run the script?([Y]es/[A]ll - yes to all/[N]o/[P]rint):
...

중간에 정말로 설치할 거냐고 물어보는데, Y를 입력하면 설치가 진행됩니다. 설치가 끝나면 git을 사용할 수 있습니다. git --version 명령어로 설치가 되었는지 확인해봅니다.

$ git --version
git version 2.32.0.windows.2

또한 Git 인스톨러와 마찬가지로 Git Bash가 함께 설치됩니다. 단, Git 인스톨러의 상세 설정 단계가 생략되므로 이후에 추가 설정이 필요할 수 있습니다.

Git Bash로 Git 사용해보기

윈도우에서 공식 인스톨러나 Chocolatey로 Git을 설치하면 Git Bash가 함께 설치됩니다. Git은 리눅스에서 개발된 도구이기 때문에 Git Bash를 사용하면 리눅스 환경과 비슷한 느낌으로 Git 커맨드라인 명령어를 사용할 수 있습니다. Windows + S를 입력하고 검색 창이 Git Bash를 검색하고 실행합니다.

Git Bash를 찾아서 실행합니다

git version 명령어로 Git 버전을 확인해봅니다. Git Bash는 Bash 셸로 동작하고 기본적인 리눅스 명령어들도 포함되어있어서 Linux처럼 Git을 사용할 수 있습니다.

Git이 정상 동작하는 것을 확인할 수 있습니다

Windows Terminal에서 Git 사용해보기

Git을 설치하고 나면 Git Bash 뿐만 아니라 PowerShell에서도 Git을 사용할 수 있습니다. Windows Terminal을 열고 git version을 실행해봅니다.

Windows Terminal(PowerShell)에서 Git 버전이 정상적으로 출력됩니다

간혹 설치하고 나서, Windows Terminal에서 바로 git을 실행하면 경로를 찾지 못 하는 경우가 있습니다. 이 경우 Windows Terminal을 종료 후 다시 실행하고 테스트해보시기 바랍니다.

다음으로 Git에서 사용하는 Git 에디터 설정을 추가해봅니다. Visual Studio Code를 사용하고 싶다면, 아래와 같이 설정합니다.

$ git config --global core.editor 'C:\Users\[USER]\AppData\Local\Programs\Microsoft VS Code\Code.exe --wait'

이 때 [USER] 부분은 자신의 윈도우 사용자 이름으로 변경해주세요. 다음 명령어로 현재 사용자의 이름을 확인할 수 있습니다.

$ $env:UserName

다음으로 커밋에 기록할 사용자 이름과 이메일을 설정합니다. 자신의 아이디와 이메일로 값을 변경해주세요.

$ git config --global user.name "Lainyzine"
$ git config --global user.email lainyzine.com@gmail.com

간단히 Git 저장소를 생성하고 커밋을 해보겠습니다. 더 자세한 내용은 다음 글을 참고해주세요.

# $HOME 아래에 작업 디렉터리 생성
$ cd ~
$ mkdir -p Projects/awesome-project-wt
$ cd Projects/awesome-project-wt

# 저장소 초기화
$ git init awesome-project-wt

# 비어있는 Hello 파일 추가
$ echo $null >> Hello

# Hello 파일을 Git 저장소의 스테이지에 추가
$ git add .

# 스테이지의 내용을 커밋
$ git commit
hint: Waiting for your editor to close the file...

git commit에 메시지를 지정하지 않으면 Git의 기본 에디터가 실행되고 대기 상태가 됩니다.

커밋 메시지 작성 전에 보안 팝업이 나타납니다

열려고 하는 파일의 작성자를 신뢰할 수 있는지 물어보는 팝업 창이 나옵니다. Open을 클릭하면 커밋 메시지 작성을 위한 임시 파일이 열립니다. 첫 번째 줄에 커밋 메시지를 작성하고 파일을 저장하고, 에디터를 종료합니다.

커밋 메시지 작성 후 저장 후 창을 종료합니다.

에디터가 종료되면, Git 커밋이 진행되고 대기중이던 Git 명령어가 종료됩니다.

...
[main af865e6] Add Hello
 1 file changed, 1 insertion(+)
 create mode 100644 Hello

혹시 에디터 설정에 문제가 있다면 다음과 같이 커밋 명령어에 메시지를 포함해도 무방합니다.

$ git commit -m'Add Hello'

git log로 방금 커밋한 내용을 확인해볼 수 있습니다.

$ git log
commit af865e6b1e54bc5fd1e5c77a6dce33b047b183e2 (HEAD -> main)
Author: Lainyzine <lainyzine.com@gmail.com>
Date:   Sun Aug 8 14:48:29 2021 +0900

    Add Hello

여기까지 윈도우에서 Git 인스톨러와 Chocolatey로 Git을 설치하는 방법을 알아보았습니다.

LainyZine은 쿠팡 파트너스 활동에 따른 수수료를 제공받습니다.