Git & Github

강민성·2021년 12월 8일
0

Git, Github

Git
개인 혹은 팀 간의 프로젝트를 관리하는 데 가장 널리 사용되고 있는 툴
공식 명칭은 분산 버전 관리 시스템 (VCS)
로컬에서 프로젝트의 버전 관리를 할 수 있는 도구
시간에 따른 프로젝트 파일의 변경 사항을 추적하는 도구(시스템). Git를 통해 개발자들은 프로젝트의 변경 사항을 기록하고, 특정 시점의 버전으로 언제든 돌아갈 수 있음. 많은 사람들이 효율적으로 함께 작업하고, 프로젝트를 중심으로 협업할 때 사용.
각 개발자가 자신만의 프로젝트 버전을 본인 컴퓨터에 갖게 됨. -> 나중에 이러한 개별 버전의 프로젝트를 병합하여 기준이 되는 버전의 프로젝트에 적용 할 수 있게 됩

버전 관리(version control)
여러 명이서 한 파일을 가지고 작업을 할 때, 그 파일의 변경 사항들(언제 누가 어떤 변경사항을 저장했는지의 이력)을 기록하여 변경사항을 한눈에 관리하고, 필요한 경우 변경 전 버전으로 되돌릴 수 있음
변경(수정)할 때마다 새 파일을 만들면 관리가 어려움

Github

Git을 사용해 버전관리를 하는 프로젝트들을 저장하고 타인과 공유할 수 있는 곳(일종의 클라우드)
Git을 사용하는 프로젝트를 위한 호스팅 서비스
Git repository를 위한 호스팅 플랫폼
개발자들끼리의 social network 기능도 있음(원하는 사람을 팔로우하는 등의 활동 가능)
GitHub (및 기타 유사한 플랫폼) 없이도 Git을 사용할 수 있지만, 다른 개발자와 같은 프로젝트를 두고 협업하거나 내 코드를 공유하려면 Github가 필요함
compare 가능(합쳐도 되는 코드인지 아닌지 판단할 때 사용)

Git 사용법

터미널에서 git version 확인

git --version

이름, 이메일 설정

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

git 시작(초기화)

git init

터미널에서 git으로 관리할 프로젝트의 프로젝트 폴더(manage.py가 있는 곳)로 이동 후 git init 입력
git init을 명령한 위치로부터 모든 디렉토리와 파일들이 git의 관리(추적)대상이 됨
프로젝트 폴더 내에 숨겨진 .git 디렉토리를 생성, git 초기화
git의 관리를 취소하고 싶을 경우 .git 디렉토리 삭제

.gitignore 생성

.gitignore 파일을 생성하여 git의 관리(추적) 대상에서 제외할 요소(기밀사항)들 등록

.gitignore 파일 구성
cd '프로젝트 폴더명'
touch .gitignore
vi .gitignore

############################
# gitignore.io에서 나온 결과 요소들 전체 붙여넣기 #
############################

https://www.toptal.com/developers/gitignore에서 사용하는 환경에 해당하는 키워드를 선택하면, 자동으로 .gitignore 파일에 정의할 요소들을 생성해줌
정의된 요소들을 복사하여 .gitignore 파일에 붙여넣기
가장 하단에 my_settings.py 추가(보안 관련 파일은 github에 업로드되면 안되기 때문)

저장
git add .
git commit -m "Add: Django Project Setting"

주의) 윈도우 cmd에서 위 명령어를 입력할 때는 ""를 사용해야 함(''금지)

git 상태 확인

git status

현재 어떤 것들이 추적이 되고 있는지 확인

git 파일 수정 이력 기록 준비

git add 수정이력을기록할파일명1 수정이력을기록할파일명2

git add . 현재위치의 모든 파일들을 git의 관리대상의 추가

파일 수정 이력 기록(저장)

git commit -m "commit 메시지(변경사항 설명)"

commit 이력 보기

git log

현재 프로젝트의 모든 commit 내용 열람

특정 시점의 commit으로 되돌리기

git checkout commit의hash값

Github에 Git 연결(push)

git remote add origin "Git을 연결할 Github repository의 url 주소"

git을 연결할 url을 remote(원격 저장소)의 origin이라는 곳에 등록

git master -M main

master branch의 이름을 main으로 변경

git push origin branch명

로컬 git의 branch를 origin에 올리기
Github 사용자명과 Github 토큰 입력(https://velog.io/@jini_eun/Github-2021%EB%85%84-8%EC%9B%94-13%EC%9D%BC%EB%B6%80%ED%84%B0-%ED%86%A0%ED%81%B0-%EC%9D%B8%EC%A6%9D-%EB%A1%9C%EA%B7%B8%EC%9D%B8-%EB%B3%80%ED%99%94)

새 branch를 생성해서 사용할 경우

git branch 브랜치 이름 # 브랜치 생성
git checkout 브랜치 이름 # 해당 브랜치로 이동 

# 생성과 동시에 이동하는 방법
git checkout -b 브랜치 이름
profile
Back-end Junior Developer

0개의 댓글