VCS, Git & GitHub

2021. 8. 15. 23:20코딩일지/Git

VCS(로컬 버전 관리)

1. Vision Control System(VCS)

# Version Control System이란?

 - 파일 변화를 시간에 따라 기록하였다가 이후 특정 시점의 버전을 꺼내올 수 있는 시스템입니다.

 

 * 코드 버전 관리를 하는 이유는 무엇일까요?

  - 수정할 때마다 파일을 새로 만들면 관리가 힘들어서 

  - 언제든 이전 버전의 코드로 돌아갈 수 있기 때문에

  - 이력을 남기기 위해서

  - 하나의 프로젝트를 두고 여러 명의 개발자들이 협업을 할 수 있기 때문이다.

 

다양한 VCS들..

 

2. Git & GitHub란 무엇인가?

 # Git이란?

 형상 관리 도구(Configuration Management Tool) 중 하나.

  - 참고로 형상 관리 도구는 버전 관리 시스템이라고도 한다.

  - Git은 소프트웨어를 개발하는 기업의 핵심 자산인 소스코드를 효과적으로 관리할 수 있게 해주는 무료, 공개소프트웨어.

  - SVN보다 여러 장점이 있어 SVN을 쓰던 개발 조직들은 하나둘씩 Git으로 갈아타고 있다.

 

 # Git Hub는?

  - 인터넷상의 공간(클라우드 서버)에 git으로 관리한 commit을 올려 공유할 수 있는 공간

 

   1) Git을 사용한 프로젝트들의 저장소

   2) 개발자들의 소셜 네트워크

 

   - Git은 프로젝트의 버전 관리를 도와주는 시스템이고 GitHub 은 Git을 이용해 버전 관리를 한 프로젝트들을 관리하게 해주는 호스팅 서비스입니다. 내가 작업한 것만이 아닌 다른 개발자들이 작업한 것 또한 확인할 수 있습니다.

 GitHub는 무료이며,  Git을 사용해서 Commit을 해서 작업을 하게 되면 Github에 이력이 남게 되어 개발자들의 협업에 편합니다.

3. Git&GitHub 실습

# 기본적인 명령어

  • git init : git 생성하기
  • git clone git_path : 코드 가져오기
  • git checkout branch_name : 브랜치 선택하기
  • git checkout -t remote_path/branch_name : 원격 브랜치 선택하기
  • git branch branch_name : 브랜치 생성하기
  • git branch -r : 원격 브랜치 목록보기
  • git branch -a : 로컬 브랜치 목록보기
  • git branch -m branch_name change_branch_name : 브랜치 이름 바꾸기
  • git branch -d branch_name : 브랜치 삭제하기
  • git push remote_name — delete branch_name : 원격 브랜치 삭제하기 ( git push origin — delete gh-pages )
  • git add file_path : 수정한 코드 선택하기 ( git add * )
  • git commit -m “commit_description” : 선택한 코드 설명 적기 ( git commit -m “내용”)
  • git push romote_name branch_name : add 하고 commit 한 코드 git server에 보내기 (git push origin master)
  • git pull : git서버에서 최신 코드 받아와 merge 하기
  • git fetch : git서버에서 최신 코드 받아오기
  • git reset — hard HEAD^ : commit한 이전 코드 취소하기
  • git reset — soft HEAD^ : 코드는 살리고 commit만 취소하기
  • git reset — merge : merge 취소하기
  • git reset — hard HEAD && git pull : git 코드 강제로 모두 받아오기
  • git config — global user.name “user_name ” : git 계정 Name 변경하기
  • git config — global user.email “user_email” : git 계정 Mail 변경하기
  • git stash / git stash save “description” : 작업 코드 임시 저장하고 브랜치 바꾸기
  • git stash pop : 마지막으로 임시 저장한 작업 코드 가져오기
  • git branch — set-upstream-to=remote_path/branch_name : git pull no tracking info 에러 해결

 # Git commit 하는 방법 

Git Commit 하는법

   * commit (송장번호)라고 생각하면 편함

  1) commit 할 폴더를 만들고 폴더로 이동

  2) git 시작 : git init 실행, 저장소 초기화

  3) git 상태 확인 : git status (ex = 장바구니를 확인)
   ** git status를 사용하여 현재의 git 상태를 주기적으로 확인합니다.

  4) 파일 수정 이력 기록 준비 : git add. 입력, 작업 파일을 모두 추가 (ex = 장바구니 담기)
   ***. 의 의미 (숨겨진 파일) 

  5) 파일 수정 이력 기록 : git commit -m 'message' 구분을 위한 메시지 (ex = 구매 처리)

  6) commit 이력 보기 : git log 입력, commit 히스토리 확인 (ex = 구매내역을 확인)

  7) github에 올리기 : git remote add origin "깃 헙 주소"를 입력하여 업로드 경로 설정

                                   git push origin -all 입력, origin 저장소의 모든 로컬 브랜치를 푸시 

 

출처 :https://pks2974.medium.com/%EC%9E%90%EC%A3%BC-%EC%82%AC%EC%9A%A9%ED%95%98%EB%8A%94-%EA%B8%B0%EC%B4%88-git-%EB%AA%85%EB%A0%B9%EC%96%B4-%EC%A0%95%EB%A6%AC%ED%95%98%EA%B8%B0-533b3689db81

https://git-scm.com/book/ko/v2/%EC%8B%9C%EC%9E%91%ED%95%98%EA%B8%B0-%EB%B2%84%EC%A0%84-%EA%B4%80%EB%A6%AC%EB%9E%80%3F