[Git] Git 기초

문지은·2023년 1월 13일

Git

목록 보기
1/6
post-thumbnail

자주쓰는 명령어

$ touch text.txt  # 빈파일 생성
$ mkdir folder  # 디렉터리 생성
$ ls -a  # -a : all 옵션. 숨김 파일까지 모두 보여줍니다
$ mv text.txt folder  # text.txt를 folder 폴더 안에 넣음
$ mv text1.txt text2.txt  # text1.txt의 이름을 text2.txt로 바꿈
$ mv folder2 folder  # folder2를 folder로 넣음
$ cd folder  # folder 이동
$ cd ..  # 부모 디렉터리로 이동
$ cd -  # 바로 이전 디렉터리로 이동
$ start text.txt  # 파일 열기
$ rm text2.txt  # 파일 삭제
$ rm -r folder  # 디렉토리 삭제

Git 초기 설정

최초 한번만 설정

  1. 작성자 정보 입력
$ git config --global user.name "이름"
$ git config --global user.email "메일 주소"
  1. 작성자 정보 확인
$ git config --global -l
또는
$ git config --global --list

Git 기본 명령어

로컬 저장소

  • Working Directory : 사용자의 일반적인 작업이 일어나는 곳
  • Staging Area : 커밋을 위한 파일 및 폴더가 추가 되는 곳
  • Repository : Staging Area에 있던 파일 및 폴더의 변경사항(커밋)을 저장하는 곳
  • Git은 Working Directory - Staging Area - Repository 의 과정으로 버전 관리 수행

git init

  • 현재 작업 중인 디렉토리를 Git으로 관리 (작업공간 등록)
  • .git 이라는 숨김 폴더 생성하고, 터미널에는 (master) 라고 표기
  • 절대로 홈 디렉토리에서 git init 하지 않기
  • 터미널에 이미 (master)가 있다면 git init 하지 않기

git status

  • Working Directory와 Staging Area에 있는 파일의 현재 상태를 알려주는 명령어
  • 어떤 작업을 시행하기 전에 수시로 status를 확인하면 좋음
$ git status
  1. untracked : Git이 관리하지 않는 파일 (한번도 Staging Area에 올라간 적 없는 파일)
  2. Tracked : Git이 관리하는 파일
  • Unmodified : 최신 상태
  • Modified : 수정되었지만 아직 Staging Area에는 반영되지 않은 상태
  • Staged : Staging Area에 올라간 상태

git add

  • Working Directory에 있는 파일을 Staging Area에 올리는 명령어
  • Git이 해당 파일을 추적(관리)할 수 있도록 만듦
  • Untracked, Modified → Staged 로 상태 변경
# 특정 파일
$ git add a.txt

# 특정 폴더
$ git add folder

# 특정 확장자
$ git add *.txt

# 현재 디렉토리에 속한 파일/폴더 전부
$ git add .
  • 파일에 수정사항이 있을 경우

    # 파일 수정
    $ echo kevin >> a.txt
    
    # 수정한 파일 다시 add
    $ git add a.txt
  • 파일 Unstage 하기

    $ git rm --cached <file>  # 원격저장소에서 파일 삭제
    또는
    $ git reset -- *.txt  # 단순히 Staging Area에서 파일 내릴 때
  • 중요한 파일만 Staging 하고 싶을 때

    # Staging 하고 싶지 않은 파일 제외
    $ echo *.log > .gitignore
    
    # 나머지 파일 add
    $ git add .

    반드시 git add 전에 .gitignore 작성해야 파일 무시됨

git commit

  • Staging Area에 올라온 파일의 변경사항을 하나의 버전(커밋)으로 저장하는 명령어
$ git commit -m "commit message"

git log

  • 커밋의 내역(ID, 작성자, 시간, 메세지 등)을 조회할 수 있는 명령어
$ git log
  • 옵션

    • --oneline : 한 줄로 축약해서 보여줌
    • --graph : 브랜치와 머지 내역을 그래프로 보여줌
    • reverse : 커밋 내역의 순서를 반대로 보여줌 (최신이 가장 아래)
    • -p : 파일의 변경 내용도 같이 보여줌
    • -2 : 원하는 갯수 만큼의 내역 보여줌(임의의 숫자 사용)
profile
코드로 꿈을 펼치는 개발자의 이야기, 노력과 열정이 가득한 곳 🌈

0개의 댓글