[Git] Git, GitHub란?

    반응형

     01. Git

    • 분산 버전 관리 시스템 (DVCS : Distributed Version Control Systems)
    • 컴퓨터 파일의 변경사항을 추적하고 여러명의 사용자들 간에 파일에 대한 작업
    • 여러 사람이 프로젝트를 할 때 소스 코드를 관리하는데 주로 사용
    • 인터넷 연결이 되지 않은 곳에서도 개발 진행 가능

     02. GitHub

    • Git으로 관리하는 프로젝트를 올려둘 수 있는 대표적인 호스팅 사이트
    • 표준 Git 명령줄 인터페이스를 사용하여 접근하고 조작할 수 있음
    • 시간, 공간의 제약없이 협업할 수 있음

     03. GitHub 기본 용어

    • Repository (저장소) : 히스토리, 태그, 소스의 가지치기 혹은 branch에 따라 버전을 저장하고 작업자가 변경한 모든 히스토리를 확인 가능
    • Working Tree : 저장소를 바라보는 작업자의 현재 시점
    • Staging Area : 저장소에 커밋하기 전 커밋을 준비하는 위치
    • Commit : 현재 변경된 작업 상태를 마치면 확정하고 저장소에 저장
    • Head : 현재 작업중인 Branch를 가리킴
    • Branch (main) : 데이터를 저장할 때 하나의 작업 공간을 저장할 때 소스 코드를 관리하는 방식
    • Merge : 다른 브런치의 내용을 현재 브런치로 가져와 합치는 작업
    • Tag : 버전을 release 하는 역할로 특정 시점에서 버전을 알려주는 고정된 값

     04. 자주 쓰는 GitHub 명령어

    • git init : 기존 디렉토리를 깃 저장소로 만들기
    • git branch : 새로운 브런치 생성하기
    • git branch -M main : 브런치의 이름 변경하기
    • git status : 파일들의 현재 상태 보기
    • git add [filename] : [filename]을 Staging Area로 추가
    • git add -A : 모든 파일을 추가하기
    • git commit -m "message" : 메세지와 함께 commit 하기
    • git push : 저장소에 commit 반영하기
    • git pull : 저장소에서 commit 가지고 오기
    • git clone : 서버 저장소의 데이터를 로컬 컴퓨터로 복사
    • git merge : 개별 브런치에서 마친 작업을 master branch로 병합
    • git log : 커밋 내역 확인하기
    • git log --online --graph : 한 줄의 그래프 형태로 commit 히스토리 보기
    • git fetch origin --prune : remote에서 삭제된 branch를 local에서도 삭제하기
    • touch .gitignore : 'gitignore' 파일 생성 (불필요한 파일을 여기에 넣어주면 제외하고 commit함)
    반응형

    댓글