Git

Git 기초 명령어

5_ssssseung 2021. 1. 21. 20:41

Git 기본 명령어

git은 분산 버전 관리 시스템(DVCS)이다. (*DVSC = Distribute Version Control System)소스코드의 버전 및 이력을 관리할 수 있다.

 

1. 준비하기

윈도우에서 git을 활용하기 위해서는 git bash 를 설치해야한다.

git을 활용하는 방식으로 GUI툴인 source tree, github desktop등을 활용 할 수도 있다.

초기설치를 완료한 이후에 컴퓨터에 author 정보를 입력한다.

$ git config --global user.name '유저이름'
$ git config --global user.email '유저이메일'

# 확인하기
$ git config --global user.name
> 유저 이름
$ git config --global user.email
> 유저 이메일

 

기초 bash 명령어들

터미널에서는 항상 자신의 위치를 확인하자

  • 현재 위치 확인하기
$ pwd
  • 현재 위치에 있는 파일 목록보기
$ ls
$ ls -a # 숨긴 파일도 보여준다
$ ls -al # 숨긴 파일을 포함한 자세한 정보도 보여준다.
  • 현재 위치에서 이동하기
$ cd 경로(폴더명을 포함한 위치)
$ cd .. # 상위 경로로 이동
$ cd - # 이전 경로로 이동
$ cd . # 현재 경로를 의미
  • 파일 만들기
$ touch README.md 파일 생성
  • 폴더(경로) 만들기
$ mkdir my_folder
  • 파일 삭제 (주의, 복구불가)
$ rm 경로/README.md
  • 폴더 삭제 (주의, 복구불가)
$ rm -rf my_folder
  • 이동 or 이름 바꾸기 (많이 사용X)
$ mv 경로 대상

 

2. 로컬 저장소 (repository) 활용하기

1. 저장소 초기화

  • 해당 경로가 git으로 관리 되지 않은 초기 상태 일때 최초 실행! (master) 가 붙어있지 않은 상태일 때
$ git init
> Initialized empty Git repository in C:/Users/student/Desktop/TIL/.git/
  • 실행하고 나면 경로 끝에 (master) 글자가 붙는다.
$ ls -al
# .git/ 생성되어 있는지 확인
  • .git 폴더가 생성되며, 여기에 git과 관련된 모든 정보가 저장된다.
  • git bash에 (master) 라고 표시되는데, 이는 현재 master branch에 있다는 뜻이다.

 

2. add

working directory, 즉 작업 공간에서 변경된 사항을 이력으로 저장하기 위해서는 반드시 staging area 를 거쳐야한다.

$ git add markdown.md # 특정 파일
$ git add images/ # 특정 폴더
$ git add . # 현재 디렉토리
  • add 전 상태
$ git status
On branch master

No commits yet

# 트래킹 되고 있지 않는 파일들
# => commit 이력에 한번도 담기지 않은 파일들
Untracked files:
# 커밋될 것들에 포함시키려면 add 명령어를 사용
  (use "git add <file>..." to include in what will be committed)
        markdown.md
# 아직 커밋될 것들은 없지만
# untracked files은 존재한다.
nothing added to commit but untracked files present (use "git add" to track)
  • add 후 상태
$ git status
On branch master

No commits yet
# 커밋될 변화들
# => staging area에 있는 파일들

Changes to be committed:
  (use "git rm --cached <file>..." to unstage)
        new file:   markdown.md

Untracked files:
  (use "git add <file>..." to include in what will be committed)
        git.md

 

3. commit

commit은 이력을 확정 짓는 명령어 입니다. 해당 시점의 스냅샷을 기록합니다. (staging area에 올라가 있는 파일들에 대해)

커밋시에는 반드시 메시지를 작성해야하며, 메시지 변경사항을 알 수 있도록 명확하게 작성하는 것이 좋다.

$ git commit -m '마크다운 정리'
[master (root-commit) 5313249] 마크다운 정리
 1 files changed, 104 insertions(+)
 create mode 100644 markdown.md
  • 커밋 이후에는 아래의 명령어를 통해 지금까지 작성된 이력을 확인한다.
$ git log
commit 5313249e0c5aa5e9a2c5d77d44b3e73434617cfc (HEAD -> master)
Author: sinclairjang <edujason-hphk@gmail.com>
Date:   Thu Dec 26 14:34:35 2019 +0900

    마크다운 정리

$ git log --oneline
5313249 (HEAD -> master) 마크다운 정리

 

3. 원격 저장소 (remote repository 활용하기)

원격 저장소 기능을 제공하는 다양한 서비스 중에서 github을 기준으로 설명한다.

 

0. 준비사항

  • 원격 저장소가 필요하다 (lab.ssafy : New project)
  • clone 버튼으로 HTTPS 주소를 복사한다.

 

1. 원격 저장소 등록

$ git remote add origin {github url}
  • 원격저장소(remote)로 origin이라는 이름으로 github url을 등록(add)한다.
  • 등록된 원격 저장소 목록을 보기 위해서는 아래의 명령어를 활용한다.
$ git remote -v
origin  https://github.com/edujason-hphk/TIL.git (fetch)
origin  https://github.com/edujason-hphk/TIL.git (push)
  • 등록된 원격 저장소를 삭제해야 할 경우 아래의 명령어를 확인한다.
$ git remote remove origin # origin이라는 이름의 저장소 주소 삭제하기

 

2. push 하기

git push origin master
  • origin으로 설정된 원격저장소에 master 브랜치로 업로드(push)
  • 이후 변경사항이 생길 때마다, add-commit,push를 반복하면 된다.
  • 그리고, 항상 모든 명령어 이후에 연관된 상태를 확인하자.
status, log`, remote -v

 

'Git' 카테고리의 다른 글

Git Flow  (0) 2021.09.09
대학교 메일 계정 GitHub pro 인증하기  (0) 2021.03.16
Git-LFS github에 대용량 파일 push하기  (0) 2020.09.17