본문 바로가기
취미

[Git] 깃허브 사용법 / 깃허브 시작하기

by climb_JJIYO 2024. 1. 24.
반응형

깃허브(Github)는 분산 버전 관리 시스템인 Git을 기반으로 하는 웹 기반의 코드 호스팅 플랫폼입니다. 개발자들이 협업하고 소프트웨어 프로젝트를 관리하는 데 사용되며, 오픈 소스 프로젝트의 공유와 협업이 쉽게 이루어질 수 있도록 도와줍니다. Github는 코드뿐만 아니라 문서, 데이터, 웹페이지 등 다양한 형태의 프로젝트를 호스팅 할 수 있습니다. Github는 개발자들 간의 협업을 간편하게 만들어주는 도구로, 오픈소스 생태계의 중심 역할을 하며 다양한 프로젝트의 호스팅과 공유를 지원합니다. 또한, 오픈 소스 생태계의 중심지로서 수많은 프로젝트들이 깃허브를 통해 공개되어 있습니다.

 

1) 버전 관리(Git) : Git은 파일의 변경 이력을 추적하고 여러 사용자 간의 협업을 위해 설계된 분산 버전 관리 시스템입니다. Github는 Git을 기반으로 프로젝트의 버전을 효과적으로 관리합니다.

2) 저장소(Repository) : Github에서는 프로젝트를 저장소라는 단위로 관리합니다. 각 저장소에는 코드뿐만 아니라 이슈, 프로젝트, 웹페이지 등과 관련된 여러 정보들이 포함됩니다.

3) 협업 기능 : 여러 사용자가 동시에 프로젝트에 참여할 수 있습니다. 브랜치와 병합 기능을 통해 여러 기능을 별도의 브랜치에서 개발하고 이를 메인 브랜치에 통합할 수 있습니다.

4) 코드 리뷰 : 여러 사용자가 작성한 코드에 대한 리뷰를 수행할 수 있습니다. 변경사항을 확인하고 의견을 나누며 코드의 품질을 향상시킬 수 있습니다.

5) 프로젝트 관리 : Github에서는 프로젝트를 진행하는데 도움이 되는 다양한 기능을 제공합니다. 마일스톤, 프로젝트 보드, 팀 등을 활용하여 효율적인 프로젝트 관리가 가능합니다.

 

깃허브(Github) 사용법

깃허브(Github)를 시작하기에 앞서 Git 환경 설정이 필요합니다.

 

Git(깃) 환경 설정

git config --global user.name "Jiyun"
git config --global user.email "gongu0829@gmail.com"

 

Git(깃) 저장소 만들기

# 버전을 관리할 폴더 생성
mkdir src

# 해당 폴더 위치로 이동
cd src

# 깃을 사용할 수 있도록 디렉토리 초기화
git init

# .git 디렉토리가 생성되었는지 확인
ls -la

 

Git(깃) 버전 관리

  • commit
# 깃 상태 확인
git status

# 스테이지에 올리기
git add hello.txt

# 깃 상태 확인
git status

# 스테이지에 올라온 파일 커밋하기
git commit -m "message1"

# 깃 상태 확인
git status

# 버전이 제대로 만들어졌는지 확인
git log
# 스테이징과 커밋을 한번에 처리 (단, 한번이라도 커밋한 적이 있는 파일을 다시 커밋할 때만 사용 가능
git commit -am "message2"
# 변경사항 확인
git dif
# 수정할 파일 되돌리기
git checkout -- hello.txt

# 스테이징 되돌리기
git reset HEAD hello2.txt

# 마지막에 한 커밋 취소하기
git reset HEAD^

# 특정 커밋으로 되돌리기
git commit -a -m "message"

# 커밋 삭제하기 않고 되돌리기(커밋 보류)
git revert 복사한 커밋 해시

 

Branch(브랜치)

  • 기본적으로 master라는 브랜치가 만들어집니다.
  • 새 브랜치를 만들면 기존에 저장한 파일을 master 브랜치에 그대로 유지하면서 기존 파일 내용을 수정하거나 새로운 기능을 구현할 파일을 만들 수 있습니다.
  • 새 브랜치에서 작업을 다 끝냈다면 새 브랜치에 있던 파일을 원래 master 브랜치에 통합할 수 있습니다.

 

Branch(브랜치) 만들기

# git 관리할 새로운 디렉토리 생성
mkdir tmp
cd tmp

# .git이 만들어졌는지 확인
git init
ls -al

# 파일 및 폴더 스테이지에 올리고 커밋
git add .
git commit -m "message"

# 커밋 내용 확인
git log

 

새 브랜치 만들기

# 브랜치를 만들거나 확인하는 명령
# 저장소를 만들때 기본적으로 master브랜치가 만들어짐
git branch

# 새로운 브랜치 만들기
# git branch [브랜치 이름]
git branch moldonapi_jyhan

# 브랜치 확인
git branch

 

브랜치 이동하기

# 브랜치 이동하기
git checkout moldonapi_jyhan
git branch

 

새 브랜치에서 커밋하기

# 새 브랜치에서 커밋하기

# 커밋 테스트를 위해 txt파일 작성
vi work.txt

# 수정한 파일 한꺼번에 스테이지에 올리기
git add .

# 커밋
git commit -m "moldonapi_jyhan_1"

 

브랜치 차이 확인

# 브랜치의 차이 확인
git log master..moldonapi_jyhan

 

브랜치 병합

# master 브랜치로 체크아웃
git checkout master
git branch

# 브랜치 병합
git merge moldonapi_jyhan

 

브랜치 삭제

git branch

git checkout master

# 브랜치 삭제
git branch -d moldonapi_jyhan

 

 

Github(깃허브) 시작하기

  • 깃허브에 가입합니다.
  • 깃허브에 로그인하여 저장소를 생성합니다.
  • 저장소의 주소를 확인합니다.

원격 저장소 연결하기

git remote add origin 복사한주소붙여넣기
#오류메시지 없이 진행되면 제대로 실행된 것

# 제대로 연결되었는지 확인
git remote -v

 

원격 저장소에 파일 올리기

# 지역저장소의 master를 원격저장소의 master 브랜치로 푸시하라는 명령
git push -u origin master

# -u 옵션은 지역 저장소의 브랜치를 원격 저장소의 master 브랜치에 연결하기 위한 것으로 처음에 한번만 사용

 

처음 push 이후에는 간단한 명령어로 푸시할 수 있습니다.

# 변경사항 commit
git commit -am "add insert"

# 업로드
git push

 

원격 저장소에서 파일 내려받기

원격 저장소에서 파일을 수정했거나 깃허브 사이트에서 직접 커밋한 경우에 사용합니다.

# 원격저장소의 내용을 master 브랜치로 가져온다는 의미
git pull origin master

 

 

결론적으로, Github는 현대 소프트웨어 개발에 필수적인 도구로, 개발자들의 협업과 프로젝트 관리를 지원하여 효율적인 개발 환경을 제공합니다. 이를 통해 프로젝트의 품질 향상과 혁신적인 아이디어의 공유를 촉진하며, 소프트웨어 개발의 발전에 기여하고 있습니다.

반응형