git, vcs

VCS; Version Control System


버전관리시스템 - 파일변화를 시간에 따라 기록하여 파일의 변경이력을 남겨 관리를 용이하게 함

  • 변경 이력을 기록을 통해서 변경된 내용을 공유
  • 타인이 작업한 내용을 쉽게 병합
  • 과거의 상태(ver.)로 쉽게 복구 가능
  • 여러 분기(Branch)를 통해 병렬 관리 가능
SVN - 이전에 많이 사용되던 대표적 원격저장소. 느린게 단점

Git


What is Git?

파일의 변경이력을 기록하는 것

  • 복잡한 Branch 관리에 적합
  • 심플하지만 핵심적 기능이 강력
  • 로컬 저장소과 원격저장소의 분리
  • 빠른 속도
What is Github?
  • Git 저장소
  • Git 저장소를 GUI 형식으로 볼 수 있도록 도와주는 서비스터미널을 이용하여 CUI 형식으로 처리할 수도 있다.

Git 작업 흐름



Working Directory


코드나 이미지가 존재하는 실제 작업하는 공간

– commit 하여 Stage Area에 올린다

– commit message를 기록하여 모두가 수정내용을 알
게 한다

Stage Area


로컬 디스크에 저장하기 전에 잠시 담아두는 공간

– 동시적 수정으로 인한 오류 및 충돌을 막아준다.

– 로컬 디스크에 commit할 파일을 골라낼 수 있도록 해준다.

– 동시 수정으로 인한 충돌(conflict) 및 충돌을 막기 위해 항상 pull을 먼저 해주는 습관을 들이자

Local Repository


로컬 디스크에 저장된 위치

– commit된 파일이 존재하는 공간

– Offline 상황에서도 접근이 가능하다

– push가 완료된 후 history를 확인해주자

Remote Repository


Git 저장소에 저장된 위치

– push된 파일이 존재하는 공간

Extra

  • .gitignore 파일Git 저장소에 특정 파일이 Stage Area에 올라가지 않도록 자동관리하도록 만들어주는 파일
  • 동시 수정으로 인한 오류 및 충돌 제어 오류 및 충돌이 발생할 경우 파일 내에
<<<<<<<<<<
와 같은 오류가 발생한다

두 내용 중 push할 내용을 선택하고 나머지 글자를 지우고 commit 후 pull & push 해주면 된다

git with command


  • git init : 현재 있는 working directory에 .git 폴더 생성
  • git status : 현재 working directory 상태 확인
  • git clone : remote 저장소를 통째로 working directory에 복사
  • git pull : remote의 정보를 가져와 working directory와 병합
  • git add : 새로 만들어졌거나 변경된 파일을 working directory에서 stage에 올리기
  • git commit : stage에 올라온 파일을 local repository에 올리기 + comment 남기기
  • git push : remote로 파일, comment 보내기
gitignore.io

.gitignore
. source tree > repository > repository > setting > advanced > edit

H2
H3
H4
3 columns
2 columns
1 column
Join the conversation now
Logo
Center