내가 보려고 정리한 git 명령어

git의 용도

깃은 버전을 관리하기 위한 용도로 사용되는데, 작업물에 유의미한 변화가 있을때 '커밋'을 통해 버전 관리를 할 수 있도록 한다.

깃의 효용
1. 변경된 내역을 확인 할 수 있음
2. 히스토리 복구를 통해 백업이 가능
3. 여러 작업자들과 협력을 용이하게 함

git과 github에 대한 이전 게시글 >


git의 기초 명령어

Pwd : 현재 경로 확인 (현재 위치한 directory 위치 / print working directory)
ls : 현재 위치의 파일 및 폴더 조회 (숨김 파일은 보지 못함)
ls -al : 자세하게 조회하기 (숨김파일 보임, 목록 형태의 조회)
clear : 현재까지 작성한 화면 삭제

cd = change directory
cd "폴더" : "폴더"로 이동
cd .. : 상위 "폴더"로 이동
cd . : 현재 "폴더"로 이동
cd ~ : 홈 "폴더"로 이동

touch "파일" : 새 "파일" 생성(확장자도 같이 기입)
cat "파일" : "파일" 내용 확인(확장자도 같이 기입)
vi "파일" : "파일"이름 편집

명령 모드로 열림 => 입력 모드로 전환
입력 모드 : "a" 또는 "i"
명령 모드 : "esc"
편집 내용 저장 : ":W"
편집기 종료 : ":q"
저장 후 종료 : ":wq"

===================================================================
<vi 기반의 편집기 종류>
  메모장, vsc, eclipse/ atom...

rm "파일" : "파일"삭제
rmdir "폴더" : "폴더" 삭제 (비어있는 폴더)
rm -rf "폴더" : "폴더"와 그 안의 파일 삭제 (비어있지 않은 폴더)

<연속해서 적어보기>
  mk dir happy && cd happy && touch heart.txt
=> happy라는 디렉토리 생성 && happy 디렉토리로 이동 && heart 파일 생성

git의 효용성

1) 변경 내역 확인
2) 히스토리 복구
3) 협력

Git을 활용하여, 로컬에서 자신의 개발 소스에 대한 섬세한 관리가 가능하고, Remote Repository (원격 저장소)에 영구적인 백업과, 다양한 협업이 가능하도록 지원하는 기능.

github 원격 저장소,프로젝트 호스팅 서비스

1) 작업 폴더(working directory)
- '버전 관리 대상' 작업물이 위치한 공간 (git에서 위치한 dir)
- 작업 폴더는 관리(추척)가 되는 파일과 관리(추적)되지 않는 파일로 나눔.
관리(추적)가 된다는 것은 이 파일의 생성, 수정, 삭제 등의 히스토리 정보를 모두 가지고 있다는 뜻.
2) 스테이지 (Stage)
- 다음 버전이 될 '선별 대상' 작업물이 위치한 공간
3) 저장소 (Repository)
- 버전이 저장되고 관리되는 공간


저장소 관리

git init : 로컬 저장소 만들기(초기화)
git status : 작업 디렉토리 확인
git add : git add <디렉토리>, <디렉토리> 스테이지에 올리기.
git add. : 모든 변경사항 스테이지에 올리기.
git commit -m"" : "first commit"과 같이 해당 커밋에 대한 메세지와 함께 커밋하기.

git log : 커밋 목록 조회
git --oneline : 커밋 목록 한 줄로 조회
git log -p : 커밋별 변경사항 목록 조회

Commit Message란?
HEAD에 어떤 변화가 반영이 되었는지 설명하기 위한 글.


git [.gitignore]

하나씩 git repository 에 넣는 것은 매우 귀찮다.
그래서 git add .를 이용해 변경된 전체 파일을 추가하고 커밋한다.

여기서

  • 보안상으로 위험성이 있는 파일
  • 프로젝트와 관계없는 파일
  • 용량이 너무 커서 제외해야되는 파일
    등등이 생겨 git add .에 포함시키기 싫은 경우가 있다.

물론 이 경우 git rm 를 통해 일부 파일만 제외시키면 되지만, 모든 커밋에 그런 행동을 하는 것은 비효율적이다.

따라서.gitignore 이라는 디렉토리를 만들어 무시할 파일을 넣어 줄 수 있다.


추가 내용 자료. 정리해두기


git 게임

git은 실무에서 필수적인 개념이므로 빠른 숙달만이 답인듯. 어렵다면 개념과 명령어 타이핑이 익숙해지도록 게임을 통해 연습을 해보도록 하자.
learngitbranching 게임

profile
FE 개발 공부 중

0개의 댓글