본문 바로가기

내가 해냄/패스트캠퍼스

패스트캠퍼스) KDT 핀테크 서비스 프론트엔드 과정 2기 220328 TIL | 국비지원교육 | 핀테크 프론트엔드개발자

KDT_Megabyte School 핀테크 서비스 프론트엔드 과정 2기

## 220328 Day01 Today I Learned

  • shell 
  • vim
  • git
  • commit

Shell

  • 운영체제에서 커널과 사용자 사이에서 사용자의 명령을 해석하고 처리 결과를 나타내주는 프로그램.
  • 명령 줄 쉘(CLI), 그래픽 쉘(GUI)로 구분한다. 
  • 다양한 운영체제에서 bash가 기본 쉘로 채택되었다.

Shell Command

  • ~ : 로그인한 사용자의 상위 폴더
  • $ : 명령어를 입력받을 준비가 완료되었다는 의미
  • ls : 사용가능 디렉토리 목록 확인
  • cd : change directory, 디렉토리 변경
  • mkdir : make directory, 디렉토리 생성
  • .. : 상위 폴더
  • . : 현재 폴더
  • - : 
  • touch : 텍스트 기반의 새로운 파일을 만들 때 사용, 특정 프로그램을 거쳐 여는 파일(.exe, .pptx 등)은 불가.
  • mv 대상파일 위치 : 대상파일을 위치로 이동
  • rm 대상파일 : 대상파일을 삭제(빈 디렉토리 일 때)
  • vim : Git에서 txt수정이 필요한 모든 순간에 사용(텍스트 편집기)

Vim Command

  • i : insert mode, 편집이 가능하다.
  • esc : normal mode, 편집이 불가능하다.
  • :q : 종료
  • :q! : 수정을 삭제하고 종료
  • :w : 저장
  • :wq : 저장하고 종료
  • :{number} : {number}번 째 문장으로 이동

Git

  • 리누스 토발즈가 만든 버전관리 시스템(VCS, Version Control System) 
  • 빠른속도, 단순한 구조 
  • 분산형 저장소 지원
  • 비선형적 개발(수천개의 브랜치) 가능
  • git ≠ github, git은 vsc(일종의 tool) git을 cloud(원격저장서비스)하는 것이 github

Pros of Git

  • 소스코드 주고받을 필요 없이 동시작업 가능 -> 생산성이 증가
  • commit 단위로 수정내용 관리, 원하는 시점으로 Checkout 가능
  • Branch로 개발하여 실험 가능, 성공시 Merge하여 반영
  • 인터넷이 연결되지 않아도 개발 가능

Git Object

  • Blob : 파일 하나의 내용에 대한 정보
  • Tree : Blob의 메타데이터(디렉토리 위치, 속성, 이름 등)
  • Commit : 커밋 순간의 스냅샷 (Blob + Tree) 

Git Process

 

Git Configuration ( terminal이나 Bash에서 설정)

  • $ git config --global user.name "{github username}"
  • $ git config --global user.email "{github email address}"
  • $ git config --global core.editor "vim"
  • $ git config --global core.pager "cat"

Commit Convention

  • 커밋 제목은 50자 이내로 요약하여 작성
  • 제목과 내용 사이 한 칸 엔터
  • prefix를 사용하여 한 눈에 커밋의 용도를 알기 쉽게 함
feat : features
docs : documentations
conf : configurations
test : test
fix : bug-fix
refactor : refactoring
ci : Continuous Integration
build : Build
perf : Performance