Git& GitHub

ㅎㅎ·2021년 6월 16일
0

Git& GitHub

목록 보기
1/1

📌 Git

: 분산 버전 관리 시스템(Version control system, VCS) 즉 프로젝트 파일의 변경 사항을 추적하는 시스템. 이를 통해 프로젝트의 변경 사항을 기록, 특정 시점의 버전 코드으로 언제든 돌아갈 수 있음.

- Repositories(저장소)

  • git repository는 git을 관리하는 프로젝트 저장소이다.
    • local repository : 본인의 컴퓨터에 저장된 로컬 버전의 프로젝트 저장소
    • remote repository : 내 컴퓨터가 아닌 외부(원격 서버)버전의 프로젝트 저장소. 팀에서 작업할 때 유용하다. 이 곳에서 프로젝트 코드를 공유, 다른 사람의 코드를 확인 가능하다. 또한 로컬 버전의 프로젝트와 병합하고 변경사항을 적용할 수 있다.

- git 사용하기

#버전 확인하기 
git --version

#이름& 이메일 설정 - git에 본인 정보를 등록 
git config --global user.name "이름"
git config --global user.email "이메일"
# 프로젝트 폴더 내에 숨겨진 .git 디렉토리 생성
git init 
# 저장소 현재 상태 확인 
git status
#특정 파일 추가 - staging area에 파일 추가
git add file.py
#전체 파일 추가
git add . 
#커밋 남기기 - 짧은 내용으로 
git commit -m "commit message"
#모든 커밋 내역 보기 
git log
# 특정 커밋 시점의 코드로 되돌리고 싶다면,
git checkout <commit-hash>
  • git 에서 관리하지 않아도 되는 파일이 있다면 .gitignore 파일을 프로젝트 폴더에 만들고, 그 안에 파일명을 나열하면 된다.

- Branches

  • 브랜치란 독립적으로 어떤 작업을 진행하기 위한 개념이다. 각가의 브랜치는 다른 브랜치의 영향을 받지 않기 때문에 여러 작업을 동시에 진행할 수 있다.

  • 여러 명이서 동시에 작업을 할 때는 다른 사람의 영향을 주거나 받지 않도록, 먼저 메인 브랜치에서 자신의 작업 전용 브랜치를 만든다. 그리고 각자 작업을 진행한 후 작업이 끝난 사람은 메인 브랜치에 자신의 브랜치 변경 사항을 적용한다.

  • 이렇게 작업을 진행할 시 독립적으로 작업을 수행할 수 있으며, 브랜치로 그 작업의기록을 중간 중간 남기게 되므로 문제가 발생했을 때 원인을 찾을 수 있다.

  • 저장소를 처음 만들면, git은 바로 master이라는 브랜치를 만든다. 이때 새로운 저장소에 새로운 파일을 추가하거나 파일의 내용을 변경하여 내용을 커밋하면 이는 모두 master라는 이름의 브랜치를 통해 처리할 수 있다.

  • master가 또 다른 새로운 브랜치를 만들어서 선언(checkout)하지 않는 이상, 모든 작업은 master 브랜치에서 일어난다.

- branch 사용하기

# 브랜치 생성하기
git branch <new-branch_name>

#브랜치 전환하기(이동하기)
git checkout <branch-name>
#브랜치 생성 동시에 생성된 브랜치로 이동하기 
git checkout -b <new-branch-name>

#브랜치 병합하기
git merge <brance-name>

#브랜치 삭제하기
git branch -d <branch-name>

#모든 브랜치 확인
git branch
  • 브랜치 전환할때, 원하는 브랜치로 이동하면 해당 브랜치 안에 있는 마지막 커밋 내용이 작업 트리에 펼처진다. 브랜치가 전환되었으므로 이후에 남기는 커밋은 전환한 브랜치에 추가된다. 즉 해당브랜치에만 영향을 주는 것. 그런 다음 다른 브랜치로 이동해 작업할 수 있으며 이전 브랜치의 변경사항 및 커밋에는 영향을 받지 않는다.

  • 내가 만든 branch에서 push 하면 깃헙에서 확인하고, 후에 merge를 하고, 그후에 Pull을 해서 바뀐 main을 가져올 수 있다.


📌 GitHub

  • 깃헙은 git을 사용한 프로젝트들의 저장소이다. 깃헙 없이도 깃을 사용할 수 있지만 다른 개발자와 같은 프로젝트를 두고 협업하거나 내 코드를 공유하기는 어렵다

- Git vs Github

  • git은 버전 관리 시스템으로 시간이 지남에 따라 파일의 변경 사항을 추척한다
  • github은 git을 사용한 프로젝트들을 관리하기 위한 호스팅 서비스이다.

- GitHub 사용하기

  1. 위의 add/commit해 로컬에 저장한다.
  2. github으로 이동 후 새 repository를 생성한다.
  3. 나의 로컬 repository를 github repository와 연결한다.(remote)
#주소가 origin이라는 이름을 가짐
git remote add origin 저장소 주소 
git branch -M master 
git push -u origin master
  1. 새 remote를 이용해 코드를 github repository에 push 한다.
git push origin master
  • git clone하기 - git clone하면 저장소의 이름을 그대로 딴 폴더가 생성되고 폴더로 이동하면 모든 폴더와 파일이 그대로 복제되어 있다.
git clone <github-repo-link>

0개의 댓글