[TIL] Git 기초

CUE·2021년 4월 15일
0

TIL

목록 보기
10/43
post-thumbnail

💡 Achievement Goals를 위주로 정리하는 TIL

Chapter. 버전 관리 시스템

  • 작업한 코드(내용)을 보존해 주는 시스템
    (Version Control System)
  • 버전 관리 시스템의 필요성
    • 각 버전별로 변경된 이력을 저장하여, 이전 버전으로 돌아가야할 상황이 발생항 경우 그 기록으로 돌아갈 수 있다.
    • 백업, 협업에 용이

Github와 Git의 관계

  • Git이란,
    코드를 효율적으로 관리하기 위함 분산형 버전 관리 시스템
    • 백업 복사본 (스냅샷)
    • 스냅샷을 만들어주는 과정 (commit)
  • Github란,
    Git Repository(저장소)를 관리할 수 있는 클라우드 기반 서비스
    • Local Repository : 내 컴퓨터의 개인 저장소
    • Remote Repository : 원격 온라인 서버 저장소 (공유 가능)
  • Github의 Git명령어
    • Fork : 원격 저장소를 내 원격 저장소로 가지고 오는 작업
    • Clone : 내 컴퓨터로 가지고 오는 작업
    • commit : 변경된 내용 저장
    • Push : Remote Repository에 올려주는 작업
    • Pull request : 제안한 코드 변경사랑 반영 여부 요청
  • Git 환경설정
git config --global user.name "나의 사용자 이름"
git config --global user.email "내 이메일 주소"

✔️ Chapter. Git

  • Github의 기능과 Git 명령어

    • clone : 원격 Repository ➡️ 내 로컬에 복사
    • status :commit되기 전 까지의 상태
    • restore : commitm staged 변경사랑을 폐기
      ex. git restore <파일명>
      구현 중 잘못되었다는 걸 감지했을 떄 내가 작업한 코드를 밀어버릴 수 있음.
    • add :
      Work space에서 Staging area로 파일을 옮겨
      commit 할 수 있는 상태로 만들어 줌
      ex. git add <파일명> / git add. 모든 파일
    • git commit -m '코멘트' 코멘트 작성
    • reset : Remote Repository에 업로드 되지 않고 Local Repository에만 commit 해 놓은 기록이라면 commit 취소하는 명령어
      ex. git reset HEAD^ 가장 최신의 commit 취소
    • push : Remote Repository에 업로드
      ex. git push origin branch
    • git log 현재까지 commit된 내역 확인
    • Pull Request(PR) : 내가 push한 변경 사항에 대해서 다른 사람들에게 알리는 것 ➡️ Github 웹사이트 상의 Compare & pull request
  • 함꼐 작업

    • git init 기존 디렉토리를 Git Repository로 변환하거나 Repository를 초기화하는 데 사용합니다.
    • git remote add origin <나의 Repository주소> 나의 Remote Repository에 연결
    • git remote add pair <상대방의 Repository주소> pair의 Remote Repository에 연결
    • git pull <shortname> <branch> 내용 가져오기 -> 자동으로 병합
    • 충돌 ( 자동 병합이 불가능한 경우 - ex)동일한 라인을 수정한 파일..)
      - git status 어떤 파일이 충돌하고 있는지 -> 파일 수정 후 staging area로 추가해야합니다.
    • git add ➡️ git commit ➡️ git push orgin master
  • Git(Local Repository)의 세 가지 영역 및 상태

    • Committed
    • modified / unmodified
      기존에 commit했던 파일을 수정한 상태 / 수정하지 않은 상태
    • staged
      commit이 가능한 상태 (staged area에 add하는 작업 필요)
  • Remote Repository 페어와 공유하며 협업하기


+)
remote repository에서 origin과 upstream의 차이점

profile
archive

0개의 댓글