인프런 강의를 보고 공부한 글입니다.
https://www.inflearn.com/course/%EC%A0%9C%EB%8C%80%EB%A1%9C-%ED%8C%8C%EB%8A%94-%EA%B9%83/dashboard


📋 Git 시작하기


📌 Git을 배워야 하는 이유


☑️ Git?

  • VCS (Version Control System) 프로그램 중 하나
    • 프로그램의 버전 관리를 위한 툴
    • 버전 (Version) : 유의미한 변화가 결과로 나오는 것
    • 버전 관리 : 프로젝트의 시간과 차원을 관리하는 것



📌 세팅 (윈도우)


☑️ 설치해야 할 프로그램들 및 간단한 설정

  • Git 설치
  • CLI Git Bash 설치
  • GUI SourceTree 설치
  • VS Code 설치
  • VS Code 기본 터미널 Git Bash로 설정



📌 CLI vs GUI


☑️ CLI

  • CLI (Command Line Interface)
    • 명령줄에 명령어를 입력하여 사용
    • Git에서 무언가를 실행하기 위한 어떤 명령들을 사용할 때 사용

☑️ GUI

  • GUI (Graphical User Interface)
    • 일반인 사용자들이 사용하기 편리하도록 구성
    • 이 강의에서는 소스트리 사용
    • 프로젝트 상태를 Git상에서 자세히 살펴볼 때 사용

  • CLI와 GUI 두 가지를 모두 혼용하여 사용해야 한다.

  • 일단 공부할 때는 CLI 위주로 공부를 시작하는 것이 좋다.
    • GUI 툴은 사용하기 편리하지만, Git의 모든 기능들을 섬세하게 다룰 수 있도록 만들어지지 않기 때문
    • Git이 어떤 기능들이 있고, 어떤 원리로 어떻게 동작하는지 직접 명령어를 입력해보면서 익히기 위함
    • CLI를 먼저 익히면 GUI는 익히기 쉽다



📌 Git 설정 & 프로젝트 관리 시작하기


☑️ Git 최초 설정

  • GitHub 계정과는 별개로, Git 전역으로 사용자 이름과 이메일 주소를 설정
// 터미널 프로그램(Git Bash)에서 명령어 실행
git config --global user.name "{본인 이름}"
git config --global user.email "{본인 이메일}"

// 설정한 사용자 이름, 이메일 주소 확인
git config --global user.name
git config --global user.email

  • 기본 브랜치명 변경
    • 기존에 기본 브랜치명으로 설정되어있는 master라는 용어는 다른 것들로 대체되는 추세 (master나 slave가 과거의 노예를 연상시키는 단어이기 때문)
git config --global init.defaultBranch main

☑️ 프로젝트 생성 & Git 관리 시작

  • 원하는 위치에 프로젝트 폴더 생성하고, 생성한 폴더를 VS Code 코드 에디터로 열기



  • 숨김 파일 보기
git init

위 명령어를 입력한 후, 프로젝트 폴더에서 숨김 파일을 확인할 수 있도록 하면 .git 숨김 폴더가 나타난다.


git이 우리의 프로젝트를 관리하는 것들이 위 숨김폴더에서 이루어진다.

절대로 위 .git 폴더를 지우지 말것 !!!!


  • 프로젝트 폴더에 아래 두 파일들을 생성하고 저장

tigers.yaml

team: Tigers

manager: John

members:
- Linda
- William
- David

lions.yaml

team: Lions

manager: Mary

members:
- Thomas
- Karen
- Margaret

터미널에 아래 명령어 입력

git status

현재 프로젝트 폴더의 상황을 git의 관점에서 보여주는 명령어


SourceTree에서도 확인 가능!



📌 Git에게 맡기지 않을 것들

  • Git에게 맡기지 않는다?

    • : git status 명령어 입력 시 뜨는 관리 후보에 뜨지 않게 하겠다는 뜻
  • Git에게 맡기지 않는 경우?

    • 굳이 포함할 필요가 없는 경우 (굳이 git에 포함 안해도 언제든지 인터넷에서 다운로드를 받을 수 있거나, 자동으로 생성되는 파일 등)
    • 보안상 민감한 정보인 경우

☑️ .gitignore
  • .gitignore을 통해 git에 배제할 요소를 지정할 수 있다.


위와 같은 방식으로 .gitignore 파일을 생성한 후, 저장한 후 git status 명령어를 입력하면,

git status에 secrets.yaml 파일 대신, .gitignore파일이 올라와 있는 모습이 확인 가능하다.


☑️ .gitignore 작성 양식

# 모든 file.c
file.c

# 최상위 폴더의 file.c
/file.c

# 모든 .c 확장자 파일
*.c

# .c 확장자지만 무시하지 않을 파일
!not_ignore_this.c

# logs란 이름의 파일 또는 폴더와 그 내용들
logs

# logs란 이름의 폴더와 그 내용들
logs/

# logs 폴더 바로 안의 debug.log와 .c 파일들
logs/debug.log
logs/*.c

# logs 폴더 바로 안, 또는 그 안의 다른 폴더(들) 안의 debug.log
logs/**/debug.log
profile
개발 공부!

0개의 댓글

관련 채용 정보

Powered by GraphCDN, the GraphQL CDN