DAY 009. 코드스테이츠 2주차 - GIT (Git과 Github)

슈레더·2021년 6월 24일
0

코드스테이츠

목록 보기
9/25
post-thumbnail

Git이란?

소스 코드 기록을 관리하고 추적할 수 있는 버전 관리 시스템

Github란?

Git Repository를 관리할 수 있는 클라우드 기반 서비스

1. Git 설치 (Ubuntu)


터미널을 열고 (Ctrl + Alt + T) sudo apt install git 을 입력해 패키지 git을 설치한다.
git --version을 입력하여 버전이 나오면 정상 설치된 것.

sudo apt install git // 루트 권한으로 git을 설치
git --version        // 설치된 git의 버전을 확인

2. Git 환경설정

사용자 정보

git 설치 후 가장 먼저 사용자 이름과 이메일 주소를 설정한다.
설정에 기록된 사용자 이름과 메일 주소를 앞으로 진행할 git 커밋 내역에 기록한다.
--global 옵션으로 설정하면, 사용자 홈에 저장되므로 git을 설정할 때 최초 한 번만 입력해도 된다.
나중에 github의 사용자 이름이나 이메일을 변경한다면 이 명령어를 다시 입력해야 한다.

만약 여러 프로젝트를 진행하고 있어서 프로젝트마다 다른 사용자 이름과 이메일 주소를 사용하고 싶으면
--global 옵션을 빼고 명령을 실행할 수 있다.

git config --global user.name "myname"
git config --global user.email "myname@example.com"

에디터

Git에서 커밋 메시지를 기록할 때, 특히 merge commit 확인 메시지가 나올 때 텍스트 에디터가 열린다. 기본값으로 텍스트 에디터 vi가 열리는데 여기서는 vscode로 변경하는 법을 적으려 한다.

git config --global core.editor "code --wait"

3. Git 용어 및 명령어

Fork

Github에서 다른 계정의 Remote Repository를 내 계정으로 가지고 올 때 쓴다.
Github 우측 상단에 'Fork'라는 버튼이 있음.

git clone

원격 Repository를 내 로컬에서 이용할 수 있도록 복사

git clone <레파지토리 주소>

git status

내 로컬로 복사해 온 디렉토리의 commit 되기 전까지의 상태를 표시

git status

git restore

Commit 혹은 staged 되지 않은 변경 사항을 뺌

git restore <파일명>

git add

Untracked files를 Staging area로 추가해서 git 관리하에 둠

git add <파일명> // 내 local의 untracked file을 staging area로 추가
  
git add .      // staging area에 모든 파일을 한번에 추가

git commit

수정 작업이 끝났을 때 변경 사항을 저장

git commit -m '커밋 메시지'  // -m 옵션을 통해 커밋할 내용의 코멘트를 작성

Staging area

Commit 하기 전에 내용을 기록하는 장소

git reset

Local에서 Commit한 내용을 취소할 때

git reset HEAD^ // 가장 최신의 commit을 취소

git push

Local에서 변경 및 commit된 사항을 Remote Repository에 업로드.
리모트에 있는 origin의 master 브랜치에 Local Repository의 변경 사항을
업로드 하기 위해서는 git push origin master라고 입력한다.

git push <origin> <branch>

git log

현재까지 commit된 내역들을 터미널 창에서 확인

git log

Pull Request(PR)

내가 push한 변경 사항에 대해서 다른 사람들에게 알리는 것

git init

기존 디렉토리를 Git Repository로 변환

git init

git remote add origin

나의 Remote Repository에 연결

git remote add origin <레파지토리 주소>
// Local Repository에 Remote Repository 연결

git remote add pair

pair의 Remote Repository에 연결

git remote add pair <레파지토리 주소>
// Local Repository에 Remote Repository 연결

git remote -v

연결된 Remote Repository 확인

git remote -v
// 현재의 Local Repository와 연결된 모든 Remote Repository 목록 확인

git pull

Remote Repository의 작업 내용 가져오기

git pull <shortname> <branch>
// Remote Repository의 해당 branch 내용을 Local Repository로 가져옴

충돌 해결하기

같은 부분을 변경한 내용이 존재해 자동으로 병합할 수 없는 경우,
git status로 충돌된 내용을 확인할 수 있다.

profile
shreder0804

0개의 댓글