1. Windows 환경에서 Git 설치 방법
  2. Mac 환경에서 Git 설치 방법
  3. Git 입문하기
  4. Git 환경설정

Windows 환경에서 Git 설치 방법

일단 Git을 시작하기 위해 설치해 보자.

설치 파일 다운로드

  1. 먼저 Git 공식 웹사이트(https://git-scm.com)에 접속한다. Git 공식 웹사이트

  2. 다운로드 페이지에서 Windows 용 설치파일을 다운받는다. Git 공식 웹사이트의 다운로드 페이지


설치

다음으로 다운받은 설치파일을 실행하여 설치를 진행한다. 아래는 간단한 설명을 붙인 설치 과정이다.

  1. GNU 오픈 소스 라이선스 관련 약관이다. 동의한다면 Next를 누르고 진행한다. Windows 환경에서 Git 설치 중 GNU 오픈 소스 라이선스 관련 약관

  2. Git이 설치될 경로이다. 원하는 경로가 따로 있다면 이곳에서 변경하면 된다. 보통은 default 경로로 진행한다. Windows 환경에서 Git 설치 중 설치될 경로

  3. 이미 Git의 다양한 컴포넌트에 익숙하신 분들은 필요한 컴포넌트를 추가로 설치할 수 있다. 하지만 초심자는 그대로 Next를 누르고 진행한다. Windows 환경에서 Git 설치 중 컴포넌트 선택 화면

  4. Git 프로그램에 대한 시작메뉴 폴더명을 다르게 지정할 수 있으나 그대로 진행하는 것을 추천한다. Windows 환경에서 Git 설치 중 시작메뉴 폴더명 지정 화면

  5. Git에서 텍스트를 이용한 작업이 필요할 때 사용할 편집기를 지정한다. 다른 외부 편집기를 사용하고 싶다면 직접 지정하고 아니면 기본값으로 두고 진행한다. Windows 환경에서 Git 설치 중 Git을 사용할 편집기 지정 화면

  6. 새로운 워킹 디렉토리에 Git을 초기화할 때 default branch의 name을 Git에서 기본값으로 지정하는 명칭으로 할지 Custom할지 정하는 곳이다. 오래전 버전에선 해당 옵션이 존재하지 않아서 branch명이 자동으로 기본값으로 지정되던 시기가 있었는데, Git을 잘 모르던 시절에 인터넷 검색에 기대어 사용할 때 원격 저장소의 브랜치명은 master로 되어있는데 main 브랜치에 push를 해서 동작이 안 되고 뭐가 문젠지 모르는 우스운 실수가 나왔었다. (지금은 웃지만… 당시엔 해결을 못해서 엄청난 스트레스였다…) 아무튼 어느 옵션을 선택하든 Git 명령어를 사용할 때 브랜치를 잘 확인하고 사용하자. Windows 환경에서 Git 설치 중 Git을 사용할 편집기 지정 화면 기본 브랜치 이름 설정 화면

  7. Git bash 명령어를 실행할 수 있는 경로를 설정하는 화면으로 일반적으로 기본값으로 두고 진행하면 된다. Windows 환경에서 Git 설치 중 Git bash 명령어 실행 가능 범위 설정 화면
    • Use Git from Git Bash only: 오직 Git bash로만 Git을 사용할 수 있다.
    • Git from the command line and also from 3rd-party software: 기본값으로써 Git bash뿐만 아니라 Windows cmd 창에서도 git 명령어를 사용할 수 있다.
    • Use Git and optional Unix tools from the Command Prompt: Windows cmd 창에서도 유닉스 도구 명령어를 사용할 수 있다.
  8. OpenSSH 패키지를 설치 유무를 선택할 수 있다. 기본값으로 두고 진행한다. Windows 환경에서 Git 설치 중 OpenSSH 패키지 설치 유무 선택 화면

  9. 서버 간 코드 이력 전송에 관련된 옵션이다. 기본값으로 두고 진행한다. Windows 환경에서 Git 설치 중 서버 간 코드 이력 전송 방식 선택 화면

  10. 엔딩 라인 처리방식 옵션이다. 기본값으로 두고 진행한다. Windows 환경에서 Git 설치 중 엔딩 라인 처리방식 선택 화면

  11. 터미널 에뮬레이터 선택 옵션이다. 기본값으로 두고 진행한다. Windows 환경에서 Git 설치 중 터미널 에뮬레이터 선택 화면

  12. pull 명령어가 성공적으로 실행될 수도 있지만 이력 간 충돌로 인해 오류가 생길 수 있다. 이 상황에 대한 동작을 선택할 수 있다. Windows 환경에서 Git 설치 중 충돌로 인한 오류 상황에 대한 동작 선택 화면
    • Fast-forward or merge: 브랜치가 생성된 커밋에 따라 순차적으로 분기하는 Fast-forward 방식으로 먼저 병합을 진행하고 동작이 불가능할 경우엔 수동 merge 진행
    • Rebase: 공통 조상 커밋인 base 커밋을 이동시키고 각 커밋들을 순차적으로 줄 세우고 동작이 불가능할 경우엔 실패할 수 있음
    • Only ever fast-forward: 브랜치가 생성된 커밋에 따라 순차적으로 분기하는 Fast-forward 방식으로 무조건 병합을 진행. 동작이 불가능할 경우엔 실패할 수 있음
  13. Git 사용 중 자격 증명 관리자 추가 여부 기본값으로 두고 진행한다. Windows 환경에서 Git 설치 중 자격 증명 관리자 추가 여부 선택 화면

  14. 파일시스템 캐싱, symbolic link 사용 유무이다. 잘 모른다면 기본값으로 두고 진행한다. Windows 환경에서 Git 설치 중 파일시스템 캐싱, symbolic link 사용 유무 선택 화면

  15. 추가옵션들로써 잘 모른다면 기본값으로 두고 진행한다. Windows 환경에서 Git 설치 중 추가 옵션 선택 화면

  16. 드디어 Git 설치 완료 Windows 환경에서 Git 설치 완료 화면


설치 확인

정상적으로 설치가 완료되었는지 확인을 해보자. 시작메뉴에 Git Bash를 포함한 프로그램들이 설치되었음을 확인할 수 있다. 이제 Git을 시작할 준비가 되었다.

설치 완료된 Git 관련 파일들

Mac 환경에서 Git 설치 방법

Homebrew 설치

이미 Homebrew가 설치되어 있다면 이 과정을 생략한다.

  • 먼저 MacOs용 패키지 관리 앱 Homebrew 공식 웹사이트(https://brew.sh)에 접속하면 확인할 수 있는 설치 명령어를 버튼을 눌러 복사한다. Homebrew 공식 웹사이트

  • 터미널 또는 iTerm2를 실행하고 복사한 명령어를 붙여넣기해서 실행하면 설치가 진행된다. (추가로 노트북 계정 비밀번호 입력이 필요할 수 있다.)
    /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
    

    Homebrew를 설치하기 위한 터미널 명령어

  • 아래의 명령어를 실행하여 Homebrew가 정상적으로 설치되었는지 확인할 수 있다.
    brew --version
    

    Homebrew 버전 확인 명령어


Git 설치

MacOs에서의 Git 설치는 Windows와 비교했을 때 매우 간단하다.

  • 아래의 명령어를 실행하면 설치가 진행된다.
    brew install git
    

    Git을 설치하는 Homebrew 명령어

  • 아래의 명령어를 실행하여 Git이 정상적으로 설치되었는지 확인할 수 있다. 이 명령어는 설치된 Git의 버전 정보를 출력해 준다.
    git --version
    

    Git 버전 확인 명령어


Git 입문하기

자 이제 설치는 끝났고 본격적으로 Git을 시작해 보자.

Git 명령 구조

  • Git의 기본적인 명령 구조는 다음과 같다.
    git <명령어> <옵션>
    
  • 기본적인 명령어의 종류는 아래의 명령을 실행하여 확인할 수 있다.
    git --help
    

    Git 도움말 명령어

  • 또한 명령어 사용 시 세미콜론(;)을 이용하여 여러 개의 명령어를 한 줄에 사용이 가능하다.
    git add .; git commit -m "[Chore] learning git"; git push origin main
    


명령어 옵션의 종류

  • 생략된 옵션
  • ’-‘ : 짧은 옵션
  • ’- -‘ : 긴 옵션
  • 명령어별 사용할 수 있는 옵션의 종류는 아래의 명령을 실행하여 확인할 수 있다.
    git <명령어> --help
    
    git <명령어> --help-option
    
  • 다음은 add 명령어의 옵션을 확인한 예시이다. Git의 add 명령어에 대한 도움말

Git 환경설정

git config <환경변수> <"설정값">
  • config 명령어를 처음 실행하면 새로운 config 파일을 생성한다. 만약 이전에 설정한 환경파일이 있다면 기존 파일을 수정한다.
    • config 파일은 .git 폴더 안에 생성된다.
    • 항목 이름이 .으로 시작하는 항목들은 운영체제의 구분 없이 숨겨져 있어서 일반적인 방법으로는 찾을 수 없다.

      • Windows의 경우 메뉴 > 보기 > 숨긴 항목 보기에 체크하면 확인할 수 있다.
      • Mac의 경우 command+shift+. 단축키를 사용하여 숨겨진 항목들이 보이게 할 수 있다.
      • 경로(path) 상의 .은 현재 경로를 뜻한다. 그러나, 파일 및 디렉토리 앞의 .은 숨겨진 파일 및 디렉토리를 의미한다.
    • .git 폴더는 git init 명령어를 통해 실행 당시 경로 안에 만들어진다. 즉, config 파일에 설정한 설정값은 지역적으로 해당 경로 안 저장소에서만 적용된다.

      1. .git 디렉토리의 위치 .git 디렉토리의 위치

      2. config 파일의 위치 config 파일의 위치


환경변수 추가

새로운 환경변수를 추가하기 위해서 add 옵션을 사용한다.

git config --add <새로운 환경변수> <"설정값">
  • 환경변수가 잘 추가되었는지 확인하기 위해서 추가하기 전에 설정값 목록을 먼저 확인해 보았다. 환경변수 목록

  • 명령어를 add 옵션과 함께 실행한다. 환경변수를 추가하는 Git 명령어

  • 새로운 변수와 값이 잘 추가되었음을 확인할 수 있다. 새로운 환경변수가 추가된 목록


환경변수 삭제

기존에 설정되어 있던 특정 환경변수를 삭제하기 위해서 unset 옵션을 사용한다.

git config --unset <환경변수>
  • 위의 실습에서 추가한 변수를 삭제해 보자. 환경변수를 삭제하는 Git 명령어


환경변수 목록

설정값에 대한 수정이 제대로 완료되었는지 리스트로 확인해 볼 수 있다. 전체 설정값이 목록으로 표시된다.

git config --list
  • 위에서 삭제한 변수가 잘 삭제되었는지 확인해 보자. 위에서 환경변수가 삭제된 목록


전역 환경설정 옵션

git config --global <환경변수> <"설정값">
  • 모든 git 작업영역에 대한 환경설정을 할 수 있는 명령어이다.
  • 이 명령어는 최상위 User 폴더 안 .gitconfig 파일에 값을 저장한다. 전역 config 파일의 위치


사용자 등록

git config user.name <"사용자 이름">
git config user.email <"사용자 이메일">
  • .git 폴더 안 config 파일에 사용자 정보가 저장되고 해당 경로 안 저장소에서 작업 시 이 사용자 정보를 사용한다.
  • 전역 사용자 등록
    git config --global user.name <"사용자 이름">
    git config --global user.email <"사용자 이메일">
    
    • 최상위 User 폴더 안 .gitconfig 파일에 사용자 정보가 저장되고 모든 git 작업영역에서 작업 시 이 사용자 정보를 사용한다.


Commit 템플릿 설정

git config --global commit.template <템플릿 파일 경로>
  • 커밋메시지 템플릿을 변경하는 명령어이다. 커밋메시지 템플릿이란 git commit 명령어 실행 시 커밋메시지 작성 화면에 특정 양식을 작성해둔 파일이다. 커밋메시지 템플릿을 변경하는 명령어


Git 색상 출력 자동 설정

Git이 자동으로 색상 출력을 사용하도록 설정한다. 이 값은 터미널이 색상 출력을 지원하는 경우에만 색상을 사용할 수 있다.

git config --global color.ui auto


자격 증명 캐시

자격 증명을 캐시하는 데 사용되는 도구를 설정한다. 사용자가 반복적인 로그인을 피할 수 있도록 도와준다.

git config --global credential.helper cache
  • 캐시 유효기간을 따로 작성하지 않으면 기본값 15분으로 설정된다. 일부 운영체제에서 운영체제의 시스템 캐시 유효기간을 따라가는 경우도 있다.
git config --global credential.helper "cache --timeout=3600"
  • timeout의 단위는 초 단위이다. 보안을 위해 임의의 캐시 유효기간을 설정할 수 있다.


Pull 명령 기본값

git pull 명령을 실행할 때 rebase를 사용하지 않고 바로 merge를 수행하도록 지정한다. 위의 Windows 환경에서 Git 설치 과정 중 12번 과정과 동일한 환경변수이다.

git config --global pull.rebase false


Branch 이름 기본값

git 저장소를 초기화할 때 브랜치의 기본명칭을 설정할 수 있다. (기본값은 master이다.) 위의 Windows 환경에서 Git 설치 과정 중 6번 과정과 동일한 환경변수이다.

git config --global init.defaultBranch <원하는 브랜치 이름 기본값>


Git의 코어 에디터 설정

commit 메시지를 작성할 때 vim 이외의 다른 에디터를 설정할 수 있다.

git config --global core.editor <에디터 경로>


단축 명령어 설정

git config --global <alias.원하는명령어> <"명령어 옵션1 옵션2 ...">
  • 자주 쓰이는 긴 명령어 및 옵션을 원하는 명령어로 설정해두고 설정한 명령어로 git의 기능을 사용할 수 있다.

마무리하며…

이번 포스트에서는 함께 Git을 설치해 보고 어떤 명령어들과 옵션들이 존재하는지 확인해 보았다. 또한 간단한 환경설정을 함께 진행해 보았으며 로컬과 전역 환경설정의 차이점에 대해서 알아보았다. 다음 포스트에서는 터미널 환경에서 Git 사용 시 필수적인 터미널 명령어들에 대해서 알아보자.