| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 |
- 독서
- c#
- Data Structure
- Network Programming
- git
- multi-thread
- Unity
- System Programming
- PS
- BOJ
- Online Judge
- Toy Project
- C++
- Today
- Total
I'm FanJae.
[Git] Git 설치 (Windows) 본문
1. Git에 대하여
- 사실 프로그래밍 경험이 있는 사람이라면, Git을 한 번쯤은 들어본 적이 있었을 것이다.
- 버전 관리 시스템 중에서 가장 많이 사용되고 있는 프로그램으로 파일 변화를 시간에 따라 기록했다가 나중에 특정 시점의 버전을 다시 꺼내올 때 유용하다.
- 자세한 내용은 Git에 대해서 제대로 다뤄볼 때 얘기해보려 한다.
2. Git 설치 순서
1) Git 홈페이지 방문
- 구글에서 Git을 검색하거나 공식 홈페이지에 직접 방문한다.

2) 설치 파일 다운로드

- 화면 왼쪽 아래(Install)이나 오른쪽에 있는 Install for Windows를 선택한다.

- Install 페이지가 나오는 데 사용 중인 운영체제와 CPU 구조에 맞는 Git 설치 파일을 선택해 다운로드를 진행한다.
- CPU 구조는 시작(윈도우 키) → 설정 → 시스템 → 정보의 시스템 종류(System type) 항목에서 확인 가능하다.

- 여기서 ARM 기반 프로세서라고 적혀있다면 ARM64 버전으로 설치한다.
3) 설치 파일 실행

- 해당 파일을 실행하여 설치를 진행한다.
4) 설치 진행
① 라이센스 확인

- GNU 라이센스를 잘 읽어준 뒤 Next를 누른다.
② 설치 위치 확인

- 여기서 Git의 설치 위치를 바꿀 수 있다. 적당한 위치로 설정하고, Next를 눌러 다음으로 진행한다.
③ 설치 옵션 확인

- 설치 옵션 화면인데 필요에 따라 추가/제외를 진행한다.
- 각각의 의미는 아래와 같다. 주로 사용되는 것을 위주로 진하게 표시를 해두었다.
On the Desktop - 바탕화면에 Git 바로가기 아이콘 생성
Windows Explorer integration - Windows 탐색기(우클릭 메뉴)에 Git 기능 추가
- Open Git Bash here
- 현재 폴더 위치에서 Git Bash를 실행한다.
- CLI(Command Line Interface) 작업할 때 사용한다.
- Open Git GUI
- 현재 폴더에서 Git GUI(Graphic User Interface) 실행
Git LFS (Large File Support)
- 대용량 파일(이미지, 영상 등)을 처리하는 방식을 대체하기 위한 확장 기능이다.
- 일반 Git은 큰 파일 처리에 비효율 적이므로, 대용량 파일을 별도의 서버에 저장하도록 한다.
Associate .git* configuration files with the default text editor
- .gitconfig, .gitignore 같은 파일을 더블클릭하면 기본 텍스트 에디터로 열리게 설정한다.
Associate .sh files to be run with Bash
- .sh (쉘 스크립트) 파일을 Bash로 실행하도록 연결한다.
- 리눅스 스타일 스크립트의 실행이 가능하다
Check daily for Git for Windows updates
- Git 업데이트를 매일 확인하는 자동 업데이트 체크 기능이다.
Add a Git Bash Profile to Windows Terminal
- Windows Terminal에 Git Bash 프로파일 추가
Scalar (Git add-on to manage large-scale repositories)
- Microsoft가 만든 Git 확장 도구로 매우 큰 저장소에서 성능을 개선할 때 사용한다.
④ 시작 메뉴 설정 확인

- 시작 메뉴를 만들어주는 설정이다. 기본 값 그대로 하는 경우가 많으니 Next를 해준다.
- 만약, 시작 메뉴를 만들어주는 것이 싫다면 Don't create a Start Menu folder를 체크한다.
⑤ Default 에디터 설정

- Default editor를 고른다. VS code가 설치되어 있다면, Vs Code를 사용하는 경우가 많다.
- 만약 단순한 목적으로 사용한다면, Notepad나 Nano 같은 에디터도 괜찮지만 본인의 경우 VS Code를 잘 사용하지 않기 때문에, Vim으로 설정하였다.
⑥ Git 최초 브랜치 설정

- Git이 신규 브랜치를 만들때 브랜치 명을 어떻게 해주는 지를 설정한다.
- 신규 브랜치 설정을 main으로 많이 사용하므로, Override 하여 main으로 통일하였다.
⑦ PATH 환경 변수 설정

- Git 설치 과정에서 PATH 환경 변수 설정을 선택하는 것이다.
- Git 명령어를 어디에서 사용할 지를 결정하게 해주는데, 각각의 옵션을 요약하면 아래와 같다.
Use Git from Git Bash Only : Git을 Git Bash에서만 사용 가능하다. (Windows CMD / PowerShell에서 사용 불가)
Git from the command line and also from 3rd-party software : Git을 Git Bash + CMD + PowerShell 모두에서 사용 가능하다. PATH에 Git 실행에 필요한 최소한을 추가한다.
Use Git and optional Unix tools from the Command Prompt : Git + grep, ls, cat과 같은 유닉스 도구까지 PATH에 추가한다. 리눅스 환경처럼 쓰고 싶을때 사용 가능하지만, 기존 Windows 명령어와 충돌할 수 있다.
- 따라서, 주로 2번(Git from the command line and also from 3rd-party software)을 많이 사용한다.
⑧ SSH 통신 설정

- Git에 설치되는 내장 OpenSSH를 사용할 지, 외부의 OpenSSH를 사용할 지를 선택하는 것이다.
- 별도 설정이 따로 필요하지 않다면, 기본 OpenSSH를 사용한다.
⑨ HTTPS 통신시 인증서 검증 방법 선택

- Git은 원격 저장소에 접속할 때 TLS(암호화) + 서버 인증서 검증을 수행한다.
- 이때 어떤 방식으로 인증서를 검증할 것인가를 고르는 옵션이다.
- 별도 설정이 필요하지 않다면, OpenSSL library를 이용한다.
⑩ 줄바꿈 처리 방식 설정

- 운영체제마다 약간의 줄바꿈 설정의 차이가 존재한다.
- Git이 파일을 저장(commit) 하거나 가져올 때 줄바꿈 문자를 어떻게 변환할지 결정한다.
- 각각의 옵션을 요약하면 아래와 같다.
Checkout Windows-style, commit Unix-Style (기본 선택)
작업할 때 : CRLF, 커밋할 때 : LF로 변환. 로컬에서는 Windows에 맞게 사용하고, 저장소에는 통일된 Unix 스타일을 유지한다.
주요 사용처 : Windows 환경
Checkout as-is, commit Unix-style
작업할 때 : 변환 없음, 커밋할 때 LF로 변환. 로컬에서는 줄바꿈을 유지하고 저장소는 LF로 통일한다.
주요 사용처 : Linux / Mac OS
Checkout as-is, commit as-is
아무 변환 안함 (일반적으로 추천하지 않는다.)
- 따라서 Windows 환경에서는 1번을 선택한다.
⑪ Git Bash 터미널 창 실행 설정

- Git Bash를 어떤 터미널 창에서 실행할지 정하는 설정이다.
- MinTTY는 Git Bash 전용 터미널을 의미하고, Use Windows` default console windows는 Windows 기본 콘솔(cmd)를 기반으로 한 것이다.
- 보통은 MinTTY를 사용하지만, Python/Node.js와 같은 콘솔 프로그램은 Windows 기본 콘솔을 사용하는 것이 좋을 수 있다.
⑫ git pull 실행시 기본 전략

- git pull 실행 시 기본 동작 전략을 정하는 옵션이다.
- git pull은 원격 저장소에서 변경 사항을 가져와 로컬 브랜치에 병합하는 명령어다.
- 각각의 옵션을 요약하면 아래와 같다.
Fast-forward or merge - 히스토리가 단순하면 그냥 이어붙이고, 충돌 구조이면 merge 커밋을 추가한다. (기본값)
Rebase - 내 로컬 커밋을 원격 최신 커밋 뒤로 재배치 한다. merge commit을 생성하지 않아서 히스토리가 선형(linear)로 유지된다.
Only ever fast-forward - fast-forward만 허용하고, 안 되면 pull이 실패한다. merge도 rebase도 하지 않아서 히스토리가 깔끔하지만 사용이 조금 불편하다.
- Git을 사용해 본 경험이 적다면, 기본값으로 설정한다.
⑬ git 로그인 정보 저장 도구 설정(자격 증명 도우미)
- GitHub나 GitLab 에 push, pull 할 때 필요한 인증 정보를 관리해 준다.

- GitHub는 비밀번호 인증 대신 토큰/OAuth 기반 인증을 주로 사용한다.
- 따라서, Credential Manager를 쓰는 것이 일반적이다.
⑭ Git의 성능 최적화 및 파일 시스템 기능

- Git이 파일 시스템 정보를 메모리에 캐싱해서 파일 접근 속도를 향상 시키는 목적으로 사용한다.
- Symbolic Link를 사용하는 것은 Windows에서는 완전한 호환이 보장되지 않으므로, 체크를 해제한다.

- 여기까지 진행하면 설치가 완료된다.
3. Git 기본 설정
① Git 커밋 정보 설정
- Git Bash를 실행하여 커밋에 기록할 작성자 정보 설정을 진행한다.
- 커밋에 기록할 작성자 정보 설정을 진행한다.
git config --global user.name "사용자이름"
git config --global user.email "이메일"
- GitHub에서는 커밋의 이메일이 Github 계정에 등록(검증)된 이메일과 일치하면 커밋을 해당 계정의 커밋으로 간주한다.

- 위와 같이 설정하면 기본 설정이 완료된다.
② Bell Style 변경
- 터미널에서 잘못된 명령어 입력, 탭(Tab) 자동 완성 실패, 혹은 특정 알림이 필요할 때, 비프음이나 화면이 깜빡인다.
- 좋은 기능이지만.. 문제는 눈이 너무 아프다.

- 화면이 이렇게 번쩍이는 문제가 있으므로, 이를 해결해준다.
notepad ~/.inputrc
- 본인의 텍스트 에디터에서 ~/.inputrc 를 입력하여 설정 창을 열어준다.
set bell-style none
- set bell-style none이라고 적은 이후 저장한다.
- Git Bash을 종료하면 Bell Style이 비활성화된다.
'정보' 카테고리의 다른 글
| [Unity] Unity Hub를 이용한 Unity Project를 GitHub에 연결하는 방법 (0) | 2026.05.23 |
|---|---|
| [Unity] Unity Hub 설치 (Windows) (0) | 2026.05.19 |