[개념정리] Git , Github란?

seovee·2023년 1월 25일
0

🗂️ 개념정리

목록 보기
7/9
post-thumbnail

Git

  • 2005년에 "리누스 토르발스"에 의해 개발된 분산 버전관리 시스템(Distributed Version Control Systems)으로,
  • 여러명의 사용자들 간에 파일에 대한 작업을 조율하는데 사용
  • 무료 공개 소프트웨어

Github

  • 2008년에 웹서비스로 개발되었고, 2018년 6월에 마이크로소프트에서 깃허브를 인후해 현재는 MS자회사로 운영
  • git을 사용하는 프로젝트를 지원하는 웹호스팅 서비스
  • 언제 어디서나 협업을 진행할 수 있도록 돕는 역할을 한다.
  • 수많은 오픈소스가 자리잡고 있다.

Git이 만들어진 이유

기존 리눅스 커널을 관리하는 툴이 맘에 들지 않아 2주만에 git이라는 시스템을 만들게 되었다고 한다.
대단쓰..👍🏻

Git의 장점

  1. 같은 파일을 여러명이 동시에 작업하는 병렬 개발이 가능(merge 방식)
  2. 분산 버전 관리 시스템 👉 오프라인에서 작업이 가능하다.
  3. Snapshot방식 👉 속도가 빠르다.
  4. 일시적인 서버 장애가 있어도 개발을 계속할 수 있다.
  5. branch사용이 간단하다.
  6. 현재는 수많은 툴에서 git의 활용범위가 증가하고 있다.

Git의 단점

  1. 직관적이지 않고, 배우기가 어렵다.
  2. 여러 브랜치나 태그를 한번에 커밋할 수 없다. 많은 충돌과 병합에 익숙해져야 한다.

Git과 Github 사용법

초기설정

  1. git --version: git이 깔렸는지 확인
  2. git config --global user.name “____” 👉 사용자id등록
  3. git config --global user.email ___@____ 👉 사용자 이메일 등록
  4. git config --global core.editor “code ——wait” 👉 에디터설정
  5. git config --global core.autocrlf input 👉 맥에선
  6. git config --global core.editor "/Applications/Visual\ Studio\ Code.app/Contents/MacOS/Electron” 👉 Mac에서 오류가 생겼을땐 이 명령어를 사용!
  7. git config --list 👉 터미널에서 설정 정보 확인
  8. git config --global -e 👉 vsc에서 수정
    ※ 수정하기 전에 cmd+shift+p에서 code 실행 추가
  9. git config --global init.defaultBranch main 👉 master → main으로 만들어버리는 것
  10. git branch -m main 👉 기본 브랜치가 master일 때 main으로
  11. git config --global push.default current 👉 -u 할때 로컬브랜치명으로 레포 생성하도록!

주요 명령어

  1. mkdir git-study 👉 디렉토리 생성
  2. echo “파일안내용” > hello.txt 👉 파일안내용이 포함된 hello.txt 생성
  3. echo “파일안내용2” >> hello.txt 👉 파일안내용2 추가
  4. cat hello.txt 👉 파일내용 확인
  5. git init 👉 git 초기화
  6. git rm -f hello.txt 👉 파일 지우기
  7. git add hello.txt 👉 staging area로 이동
  8. git commit -m “첫번째 커밋” 👉 staging area 파일을 커밋!
  9. git log 👉 커밋 history 확인 / 나올땐 키보드 ‘Q’
  10. git log ——oneline 👉 history를 한눈에 보여줌

Github에 올리기

  1. github 가입 > repository 생성
  2. git remote add origin <repo주소> 👉 <주소>인 origin가상주소 생성
  3. git remote -v 👉 리모트 브랜치 조회
  4. git remote rm origin 👉 origin 삭제
  5. git push origin main 👉 main 브랜치로 보내기

Gitbub에서 복사, 가져오기

  1. git clone "깃허브주소" 👉 깃 복사
  2. git pull 👉 깃허브에 있는걸 가져오는 것, 깃내용 복사o
  3. npx degit 주소 new폴더명 👉 노드복사, 깃내용 복사x

Git branch

  1. git init -b main 👉 저장소 초기화 시키면서 main으로
  2. git branch “브랜치명” 👉 생성
  3. git checkout -b “브랜치명” 👉 생성 + 해당 브랜치로 이동
  4. git switch “브랜치명” 👉 브랜치 변경
  5. git branch “브랜치명” -d 👉 삭제

Git 초기화

  1. git reset ——hard 소스값 👉 소스값으로 보내고 그 이후꺼는 지운다.

  2. git reset ——soft 소스값

    👉 커밋 전으로 보내지만, 코드는 지우지 않는다 → 각각 따로 커밋했지만 합칠때 유용하다.

profile
낭만이 빠지면 섭하지

0개의 댓글