Git & GitHub

bery·2020년 7월 29일
0
post-custom-banner

Git

프로젝트 파일의 변경 사항을 추적하는 시스템이다. 이를 통해 개발자들은 프로젝트의 변경 사항을 기록하고, 특정 시점의 버전으로 언제든 돌아갈 수 있다. 이런 버전 관리 시스템은 많은 사람들이 효율적으로 함께 작업하고, 프로젝트를 중심으로 협업할 때 사용할 수 있다.

1. Git 설치

먼저 컴퓨터에 Git이 설치되어 있는지 확인한다.

(Git 다운로드 링크: https://git-scm.com/downloads)

설치를 마쳤으면, Git을 사용할 수 있는지 확인하기 위해 터미널을 열고 아래 커맨드를 입력한다.

git --version

Git이 정상적으로 설치 되었다면, 설치되어 있는 Git 버전이 표시된다.

이름 & 이메일 설정
Git에 본인 정보를 등록하기 위해 터미널에서 실제 본인 "이름"과 "이메일"을 입력한다.

git config --global user.name "이름"
git config --global user.email "이메일"

2. Git Repositories (저장소)

Git repository는 Git으로 관리하는 프로젝트 저장소이다. Git repository에는 두 가지 종류가 있다.

Local repository 본인 컴퓨터에 저장된 프로젝트 저장소
Remote repository 외부 버전의 프로젝트 저장소. 팀 작업 할때 유용하다.

3. Initializing a repository

새 저장소(repository)를 만들고 Git으로 프로젝트 관리를 시작하려면 터미널에서 프로젝트로 이동 후 git init을 입력하면 프로젝트 폴더 내 숨겨진 .git 디렉토리를 생성한다.

git init

4. Staging and committing code

Git에서 commit 이란, 프로젝트의 현재 상태를 나타내는 체크포인트 또는 스냅샷으로 생각할 수 있다. 이를 통해 프로젝트의 진행 상황을 효율적으로 관리할 수 있다.

상태확인

git status

모든 변경사항을 확인할 수 있다.

Staging area에 파일 추가하기

git add file.js

git add 라는 명령어를 통해 우리가 원하는 파일들을 staging area 로 추가해줄 수 있다.

Making commits (커밋 남기기)

git commit - "Commit message"

커밋은 특정 시간의 코드 스냅샷의 형태로 해당 repository의 커밋 기록에 남게 된다.

Commit history

git log

프로젝트의 모든 커밋 내역을 볼 수 있다.

Ignoring files

staging area 에 추가하고 싶지 않거나, git 에서 관리하지 않아도 되는 파일이 있다면, .gitignore 파일을 프로젝트 폴더에 생성해준다.

Branches

브랜치란 독립적으로 어떤 작업을 진행하기 위한 개념이다. 필요에 의해 만들어지는 각각의 브랜치는 다른 브랜치의 영향을 받지 않기 때문에, 여러 작업을 동시에 진행할 수 있다. 여러 명이서 동시에 작업을 할 때에 다른 사람의 작업에 영향을 주거나 받지 않도록, 먼저 메인 브랜치에서 자신의 작업 전용 브랜치를 만든다. 그리고 각자 작업을 진행한 후, 작업이 끝난 사람은 메인 브랜치에 자신의 브랜치의 변경 사항을 적용한다.

GitHub

GitHub은 Git을 사용하는 프로젝트를 위한 호스팅 서비스이다. GitHub 은 여러명의 개발자들이 함께 하나의 repository 를 두고 협업할 수 있게 해주기 때문에 정말 유용하다. 여러가지 오픈소스 프로젝트를 보고 참고해서 나의 프로젝트를 빌드업하거나 해당 프로젝트에 기여할 수도 있다.

Using GitHub

Common Workflow: 내 로컬 Repository를 GitHub 에 push 하기

  1. 로컬에서 add / commit 한다.
  2. Github 으로 이동 후 새 repository를 생성한다.
  3. 나의 로컬 repository 를 GitHub repository 와 연결한다. (remote 추가)
  4. 새 remote 를 이용하여 코드를 Push 한다.

Branching and merging

브랜치를 사용해서 현재 프로젝트의 코드를 그대로 복제하여 작업 환경을 만들 수 있다. master 브랜치를 건드릴 필요없이 작업환경에서 기능을 추가하거나 테스트를 진행할 수 있다. 나중에 전부 완료가 된다면, 그 때 master 브랜치와 merge(병합) 해줄 수 있다.

https://help.github.com
https://guides.github.com/

post-custom-banner

0개의 댓글