GIT
버전(version)
프로그램을 수정하여 개선된 것이다
정식 버전은 1부터 시작하며, 수정이 이루어지면 버전 숫자가 늘어난다
버전번호
소프트웨어 또는 프로젝트의 업데이트 레벨을 식별하는데 사용됨
메이저 버전번호.마이너 버전번호.패치 버전번호
버전 관리(Version Control)
버전 별로 기록하고 관리하는 것을 말한다
버전을 관리하며 백업이나 복구가 용이하며, 언제 누가 해당 버전을 만들고 수정했는지 알기 쉽다
로컬 버전 관리
로컬(내 컴퓨터)에서 버전을 관리하는 방식이다
작업하는 내용물을 현재 시점에서 복사해두고 압축하여 관리한다
간단하게 누구나 할 수 있으므로 자주 사용하지만 실수로 지우거나 잘못 수정하는 경우가 많다
버전 관리 시스템(Version Control System)
파일 변화 내용을 기록, 관리하고 추적을 도와주는 소프트웨어이다
Git
Git과 GitHub
Git
여러 버전 관리 시스템 중 하나(로컬에서 사용)
git만의 방식으로 버전별 파일 저장, 관리한다
굉장히 빠르고 버전을 분산하여 저장하므로 안전하다
단, Git의 사용방법은 다른 버전 관리 시스템에 비해 어렵다는 단점이 있음
GitHub
Git을 저장하고 공유할 수 있는 서버를 제공하는 사이트 중 하나이다
GitHub 서버에 내 Git을 저장해두면 다른 pc에서도 쉽게 버전 관리를 할 수 있으며
다른 개발자들에게 Git을 공유하여 협업이 된다는 장점이 있다
Git 구조
Git을 사용하려면 기본 구조를 알아야한다
크게 3가지 영역으로 나뉘며 각 영역에 순차적으로 파일을 올려줘야함
1) Working Directory(작업 폴더, 깃 저장소)
내가 작업하는 공간을 Working Directory)로 설정해둔다
설정하게 되면 해당 폴더에 .git이라는 폴더가 생긴다
- 파일 상태
Working Directory영역의 파일들은 아직 git의 관리 대상이 아님
관리 대상이 아닌 파일은 untracked 상태라고 함
2) Staging Area(스테이징 영역)
스테이징 영역에 있는 파일들은 git의 관리 대상임
수정, 추가, 삭제 등 이 영역 파일의 변경사항을 git이 저장하고 관리한다
수정사항을 바로 Local Repository에 커밋하면 실수가 많아질 것이기 때문에
스테이징 여역에서 우선 수정내용을 검토하고 확인 후 로컬 저장소에 커밋한다
- 파일의 상태
스테이징 영역에 파일을 올리는 것을 Staging이라고 함
관리 대상 파일을 tacked(추적)상태라고 함
- tracked 상태의 종류
unmodified : 수정이 되지 않은 상태
modified : 스테이징 영역에 들어온 파일 중 수정이 된 상태
staged : 로컬 저장소에 올릴 준비가 완료된 상태
3) Local Repository(로컬 저장소)
스테이징 영역에서 Staged 상태의 파일을 Commit하면 로컬 저장소에 저장된다
로컬 저장소에 Commit을 한다는 것은 스테이징 영역의 수정사항을 확정 짓는 것임
즉, 새로운 버전 하나를 만들고 저장한 것이다
내가 원할 때 언제든 저장한 버전으로(Commit 한 시점) 돌아올 수 있다
주의 : staged 상태가 아니라면 Commit이 불가
Git 설치
설치여부 확인
cmd > git
Git 사용하기
1. CLI(Command Line Interface)
cmd나 터미널 등을 이용하여 명령어를 사용함
GUI로 사용하는 것보다 어렵지만 git의 기능을 사용하기 위해서는 CLI로 사용하는 것이 좋다
2. GUI(Graphic User Interface)
일반 프로그램처럼 눈으로 보고 버튼을 눌러 사용한다
사용방법이 편리하지만 단순하게 만들어 많은 기능이 없다
Git 기본 명령어
git 명령어는 앞에 git을 붙이고 사용함
config
환경설정을 하는 명령어
git 설치 후 반드시 다음과 같은 초기설정을 해야함
git config --global user.name "git-hub이름"
git config --global user.email "git-hub이메일"
--global 옵션으로 설정한 내용은 설치 후 딱 한 번만 하면됨
git config --list 설정내용 확인
esc + : + q
git init
현재 위치의 폴더를 working directory(깃 저장소)로 만듬
.git이라는 숨김 파일이 생성됨
git status
현재 깃 저장소에 있는 파일들의 상태를 확인함
git add 파일명 or .(현재폴더 내의 전체 파일)
작업폴더의 파일을 스테이징 시킴
수정된 파일은 staged 상태로 만들기 위해서 사용됨
파일에 .을 사용하면 현재 경로의 모든 파일과 변경사항을 스테이징함
git rm --cached 파일명
add로 스테이징 시킨 파일을 스테이징 영역에서 내보냄
git commit -m "메세지"
스테이징 영역의 파일들의 변경사항을 확정짓고 새로운 버전을 로컬 저장소에 저장함
커밋할 때 어떤 파일에 어떤 수정사항이 있었는지 메세지를 작성하는 것이 좋음
(메세지를 작성하지 않으면 나중에 버전을 되될릴 때 어떤 시점으로 가야하는 지 알 수 없음)
git commit --amend
방금전 커밋한 메세지를 수정하는 명령어(vim 편집기가 열린다)
편집기 방향키는 h,j,k,l or 방향키 위아래왼쪽오른쪽
일반모드 : i or a 를 입력하면 편집모드로 변경
esc + : 명령모드로 병경
명령모드 : esc + w(저장) q(나가기) !(강제)
입력모드 : 수정 내용을 작성할 수 있음
i 현재 커서가 있는 곳에서 작성
a 현재 커서 다음 위치에서 작성
o 현재 커서 아래줄 위치에서 작성
저장소(Repository)의 종류
1. 로컬 저장소(Local)
개인 pc에서 사용하는 저장소
2. 원격 저장소(Remote)
git-hub 같은 사이트 등을 이용하여 어떤 서버에 올려 놓고 사용하는 저장소임
주로 협업을 위해 사용함
git branch 확인, 수정
git branch
현재 로컬의 브런치들을 확인
git branch -m master main
master라는 브런치 명을 main으로 변경함
git branch -D 브런치명
브런치를 삭제함
원격 저장소 관련 명령어
git remote add 원격 저장소 이름(origin) 주소 (git-hub url 복붙)
원격 저장소를 내 로컬과 연결하는 명령어
git remote -v
원격 저장소와 연결이 잘 되었는지 확인
'javaboiii의 Git' 카테고리의 다른 글
Git - 기초2 (0) | 2024.10.30 |
---|