# Git 설치 및 커멘드 사용법

img

 

Git 기초 공부하기 목차
(1) 2020/02/29 - [Git] - Visual Studio Code에 Github 연동하기
(2) 2020/04/16 - [Git] - Git 이란?
(3) 2020/04/17 - [Git] - Git 설치 및 커멘드 사용법
(4) 2020/04/18 - [Git] - Git Branch 사용하기
(5) 2020/04/19 - [Git] - Git remote 원격 저장소와 Github
(6) 2020/04/20 - [Git] - Git - Pull Request 활용하기

 

1. Git 설치

대부분의 Linux 또는 macOS 환경에서는 이미 Git이 설치되어 있습니다.

아래의 순서를 참고하여 Git을 설치하고 실행해봅시다. 

1. Git 설치여부 확인

Git 설치 전 자신의 PC에 이미 설치되어 있는지 확인해봅시다.

[Windows]

  1. Windows + r 단축키를 입력하여 실행 창을 띄웁니다.
  2. cmd 입력 후 Enter
  3. git 입력 후 Enter

[macOS]

  1. Finder → 응용 프로그램 → 유틸리티로 이동하여 터미널.app 을 실행합니다.
  2. git입력 후 Enter

img

위와 같이 실행되지 않는다면 다음 단계에서 Git을 설치해주세요. 

2. Git 설치

아래의 링크에 접속 후 본인의 PC 환경에 맞는 설치 파일을 다운로드 합니다.

Git 설치 링크

다운로드 된 설치 파일을 실행하여 Git 설치를 완료합니다.

macOS에서는 Git이 설치되어있지 않다면 최초 명령어 실행 시 뜨는 대화상자에서 설치 버튼을 눌러 Git을 설치할 수 있습니다.

img

3.Git 실행 준비

[Windows]

시작 메뉴 → Git 폴더로 이동하여 Git Bash 실행

[macOS]

Finder → 응용 프로그램 → 유틸리티로 이동하여 터미널.app 을 실행 

4.Git 설치 확인

Git이 정상적으로 설치되었나요?

아래의 명령어를 입력하여 Git 버전을 확인해보세요.

git –version

정확한 버전은 아래와 달라도 상관없습니다.

img

2. Git 초기 설정

Git을 PC에 설치했습니다. 이제 본격적으로 진행하기 전 설정해야하는 작업이 있습니다. 

1. 사용자 정보 설정

저장소에 코드를 반영할 때 등록될 사용자 정보를 설정합니다.

이름: git config --global user.name "<이름>"

이메일: git config --global user.email "<이메일>"

img

프로젝트 마다 다른 사용자 정보를 지정하고 싶으면 해당 프로젝트 폴더에서 --global 옵션을 빼고 실행해주세요.

2.설정 정보 확인

아래의 명령을 실행하여 앞에서 설정한 내용을 확인해보세요.

git config --list

img

3. Git 저장소 생성

Git 저장소를 생성하는 방법에는 크게 두 가지가 있습니다.

기존에 작업중인 디렉토리를 사용하거나(또는 새로운 디렉토리에서 시작할 때) 다른 저장소를 복제(Clone)하는 경우입니다. 

1. 기존 디렉토리 사용

Git을 사용할 프로젝트 디렉토리로 이동 후 git init 명령어를 실행해주세요.

프로젝트 디렉토리에 .git 디렉토리가 생성되며 저장소 생성이 완료되었습니다.

img

2. 저장소 복제(Clone) 사용

작업을 진행할 디렉토리에서 git clone <저장소 주소> 명령어를 실행해주세요.

저장소에 있는 모든 데이터가 다운로드되며 저장소 복제가 완료됩니다.

![img](../.vuepress/public/images/img-git/git2(8).png)

저장소에 있는 모든 데이터를 복사해 가져오기 때문에 복제된 저장소가 망가져도 걱정하지 않으셔도 됩니다.

Git Lap과 같은 서비스를 복사해서 만드는 경우 vs 내 컴퓨터에 저장소를 만드는 경우

git init으로 새로운 git 저장소를 생성 -> gitLab 접속!

new project를 하나 생성합니다.

img

이 gitLab을 Clone 할 폴더를 생성해줍니다.

img

text 파일을 하나 만들고 수정해서 저장하면

이 파일은 Working Directory에만 저장되어 있는 상태입니다.

img

Working Directory 에서 Staging Area로 넣는 방법
‘git add’ 명령어를 통해 가능합니다.

img

git add를 통해 변화된 상태를 git stauts로 확인해보면 아래와 같습니다.

img

이제 Staging Area로 파일이 반영된 상태입니다.

Staging Area에서 제거하고 싶을 때는 git reset 명령어를 통해 가능합니다.

img

다시 추가해서 집어넣을 때 모든 파일을 Staging Area로 올리는
add “.”을 쓰면 됩니다.

img

Staging Area

working directory랑 물리적으로 구분되는 공간이 아니고 같은 공간에
논리적인 구분이라고 생각해야 함!
.git으로 들어가면 완전히 다른 공간으로 들어가는 것

git log 명령어를 통해 commit 내용 확인 가능합니다.

img

4. Git 파일 생성과 저장소 반영 I

Git 설치와 설정까지 모두 완료했습니다. 본격적으로 Git을 활용하여 프로젝트를 진행해 보겠습니다. 

1. 새로운 파일 준비 영역으로 옮기기

1

2

// comment.js

alert("Hello world!");

새로운 comment.js파일을 작성하고 저장하였습니다. 이 파일을 Git에 저장소에 반영할 수 있을까요?

img

앞장에서 배운대로 Git은 작업 디렉토리준비 영역.git 디렉토리의 세 가지 영역에서 파일을 관리합니다. 방금 만든 따끈따끈한 comment.js파일은 작업 디렉토리 영역에 위치하고 있습니다. Git 저장소에 반영하려면 이 파일을 준비 영역으로 옮겨야 합니다.

git add <파일명> 명령어를 사용하여 준비 영역으로 옮길 수 있습니다.

comment.js파일을 준비 영역으로 옮겨보겠습니다.

git add comment.js

저장소에 반영 전 user.js 파일도 준비 영역으로 옮기고 싶어졌습니다. 그럴 땐 계속해서 동일한 명령어로 계속할 수 있습니다.

git add user.js

만약 옮겨야하는 파일이 많을 때는 어떻게 할까요? 모든 파일을 일일이 적어줘야 할까요?

아래의 명령어로 추가된/수정된 모든 파일을 처리할 수 있습니다.

git add .

2. 준비 영역으로 옮긴 파일 취소하기

한 번에 여러 파일들을 수정했지만, 히스토리 관리 또는 수정한 내용의 명확성 때문에 저장소 반영(Commit)을 나누어서 해야할 경우가 있습니다. 이 때는 git reset <파일명> 명령어로 해결할 수 있습니다.

git reset user.js

user.js 파일이 취소되었습니다.

3. 현재 상태 확인하기

현재 작업중인 프로젝트 파일들의 상태가 어떤지 확인할 수 있는 명령어 입니다.

git status

img

4. Git 파일 생성과 저장소 반영 II

Git 설치와 설정까지 모두 완료했습니다. 본격적으로 Git을 활용하여 프로젝트를 진행해 보겠습니다. 

4. 저장소 반영하기

준비 영역으로 옮긴 comment.js 파일과 user.js파일을 저장소에 반영해보겠습니다. 저장소 반영은 git commit -m "<메모>" 명령어로 할 수 있습니다.

git commit -m "Initial commit"

img

저장소에 파일이 반영되었습니다.

5. 저장소 반영 메모 변경하기

저장소에 반영할 당시에 남긴 메모에 오타가 있거나, 잘못된 내용을 남겨 변경하고 싶을 때가 있습니다. 이러한 경우에는 git commit --amend 명령어로 메모를 변경할 수 있습니다.

img

앞으로 사용할 에디터를 변경하고 싶을 때는 git config --global core.editor <에디터 경로> 명령어를 사용하여 변경할 수 있습니다.

[예시]

git config --global core.editor C:\Program Files\Notepad++\notepad++.exe

6. 저장소 반영 내역 확인하기

저장소에 반영했던 내역을 보고 싶을 땐 git log 명령어로 확인할 수 있습니다.

img

Last Updated: 6/18/2023, 2:13:15 PM