Home Git을 사용해보자
Post
Cancel

Git을 사용해보자

이 포스트는 엘리스 AI 트랙 4기 강의를 듣고 정리한 내용입니다.

git은 효율적인 협업을 위한 툴로 버전 관리가 쉽다. git의 특징으로는 작업의 종류를 나눌 수 있는 가지치기와 병합을 지원한다. 분산 작업이 가능하고 이전 과거와 현재의 변경사항을 확인할 수 있다.

local 영역의 working directory와 staging area, repository로 구분되어 있다. Github나 gitlab 과 같은 git 호스팅 서비스에 올려 작업한 것을 공유할 수 있다.

Git 시작하기

Linux와 maxOS는 git이 기본으로 설치가 되어 있어 사용하면 되고 , windows 환경에서는 git을 설치해 줘야 한다.

1
git --version

우선 위 명령어로 git의 버전을 확인해 준다.

사용자 정보 설정하기

1
2
git config --global user.name "username"
git config --global user.email useremail@gmail.com

위 명령어를 이용해 git에 사용자 정보를 설정해 준다. 프로젝트마다 사용자 정보를 다르게 설정하고 싶으면 --global옵션을 빼고 하면 된다.

Git 저장소 생성과 github에 push하기

저장소 생성

1
git init

위 명령어로 git저장소를 생성한다. 저장소를 생성하고 나면 해당 working directory.git이라는 숨김파일이 생긴다. .git폴더는 저장소의 정보, 커밋 등의 정보를 담고 있다.

Commit 하기

staging.png

1
2
git add .
git commit -m "initial commit"

git add .명령어로 working directory에 있는 모든 파일을 staging area로 올리게 된다. 특정 파일만 올리고 싶으면 .대신 파일 이름을 적어주면 된다.

git commitstaging영역에 올라와 있는 파일들을 repository에 올리게 된다. Commit시에 -m옵션은 commit 메세지를 한 줄로 입력 가능하게 해준다. -m옵션이 없을 경우 nanovi같은 문서 편집기가 열리고 상세 내용을 적을 수 있다.

Gitghub repository와 연결하기

Git에 저장되어 있는 파일들을 github로 올리기 위해서 github의 repository와 연결이 필요하다. git 저장소와 github repository를 연결하려면 먼저 github에서 repository를 생성해 준다. clone할 때 복사하는 github 저장소 주소를 복사한다.

Untitled

1
git remote add <local 저장소 이름> <github repository 주소>

복사한 주소를 터미널에서 위 명령어를 사용해 github repository 주소에 넣는다. local 저장소 이름은 다음으로 설명할 push에서 필요하기 때문에 해당 git 저장소를 어떤 이름으로 연결했는지 기억해야 한다.

Github repository에 push하기

1
git push <local 저장소 이름> <branch name>

Github repository와 연결한 후 push를 하는 명령어이다. local 저장소 이름이 origin이고 branch의 이름이 master일 때 명령어는 git push origin master가 된다.

Git 상태 확인하기

1
2
git status
git log

status명령어를 사용하면 staging영역에 있는 파일들의 상태를 확인할 수 있고, log명령어를 사용하면 repository에 존재하는 history를 확인할 수 있다.

Gti branch 사용하기

Git branch 생성

1
2
git branch branch_name
git checkout branch_name

branch명령으로 새로운 branch를 생성할 수 있다. checkout명령은 원하는 branch로 이동해서 작업할 수 있다.

Git merge 사용하기

1
2
3
4
5
6
git add .
git commit -m "init"
git checkout master
git merge branch_name

git branch -d branch_name

merge를 진행할 때는 작업을 마친 branch에서 commit을 한 후 merge하고 싶은 branch(예시에는 master branch)로 이동한 다음 merge명령으로 두 branch를 병합해 준다.

각 branch는 다른 branch의 영향을 받지 않기 때문에 여러 작업을 동시에 진행할 수 있다.

merge가 완료된 branch는 더 이상 필요하지 않기 때문에 제거를 해줘야 한다. branch -d를 사용해 병합이 완료된 branch를 삭제해 준다.

Git merge conflict

merge를 진행할 때 한 파일에 동일한 부분이 동시에 수정되면 병합이 불가능한 merge conflict가 발생한다. 이런 경우 충돌이 발생한 파일을 찾아 수정을 한 수 병합을 해주면 해결된다.

This post is licensed under CC BY 4.0 by the author.

그리디 알고리즘 (이것이 취업을 위한 코딩 테스트다)

javascript(DOM, Event, Class)