Git이란?
- 분산 버전 관리 시스템(Version Control System) 의 한 종류
- 빠른 수행 속도에 중점을 둔다.
버전 관리 시스템이란?
- 파일 변화를 시간에 따라 기록했다가 나중에 특정 시점의 버전을 다시 불러올 수 있는 시스템
분산형 버전 관리 시스템이란?
- 중앙 서버에서 파일과 변경 히스토리를 저장해서 관리하는 방식(SVN)과 달리 개별 저장소에서 분산해서 관리하는 방식
다음의 그림을 참고하면 구조를 이해하기 쉬울 것이다.
Git 기본용어
- Repository : 저장소를 의미, 소스파일과 변경 이력들을 저장
- Remote Repository : 원격 저장소이며 여러 사람이 함께 공유하기 위한 저장소
- Local Repository : 로컬 PC에 저장되는 개인 전용 저장소
- Staging Area : 저장소에 커밋하기 전에 준비하는 위치 (index라고도 함)
- Commit : 현재 변경된 작업을 저장소에 반영
- branch : 한국어로 번역하면 가지치기 또는 갈래라고 하는데 또 다른 작업공간을 의미
- merge: 병합을 의미, 특정 브랜치에서 작업한 내용을 다른 브랜치에 적용하는 것을 의미
- head : 마지막 커밋에 위치
- branch와 merge를 하는 과정에서 충돌에 유의하자!
.gitignore파일
- Git 버전 관리에서 제외할 파일 목록을 지정하는 파일
- Secret키 같이 유니크한 정보나 개인정보 등을 제외시키 위해 쓰는 파일
Git 주요 명령어
Git 명령어는 다음과 같이 있다. 이보다 더 많지만 간략히 보겠다!
- git 설정
git config --global user.name <본인이름>
git config --global user.email <본인 이메일 주소>
- git 설정 확인
git config --list
- 저장소 초기화
git init
- 저장소 상태 체크
git status
- 파일의 변경사항 Staging Area 에 추가
git add <파일명>
- 변경된 작업을 저장소에 반영
git commit -m "메세지"
- 변경 이력 확인
git log
- 원격 저장소 주소 등록
git remote add origin <원격저장소주소>
- 원격 저장소 주소 수정
git remote set-url origin <원격저장소주소>
- 로컬저장소에 변경된 내용 원격저장소에 반영하기
git push -u origin main
- 원격 저장소에 변경된 내용 로컬저장소에 반영하기
git pull origin main
- 원격 저장소 내용 복사해오기
git clone <원격저장소주소>
깃을 설치하고 깃 파일을 넣을 폴더 하나를 지정한 다음 우클릭한 후 Git Bash를 실행한다.
깃을 실행하고, 본인이 쓸 ID와 이메일 주소를 입력하면된다.
git 설정 코드를 이용하여 깃을 연동시키면 된다.
이 후 PowerShell을 실행시켜 모듈을 다음과 같이 만들어 준다.
이제 스크립트를 만들고 가상환경으로 진입해보겠다.
만들어진 가상환경에 pip list는 아무것도 없기 때문에 업데이트를 해준다.
그리고 나의 모듈에 쓰인 라이브러리를 따로 설치한다.
다시 git bash로 와서 git init을 이용하여 초기화를 해준다.
git status를 입력하여 상태를 확인해보면 my_api를 추가하라는 메시지가 나온다,
메세지 그대로 입력하여 추가한다.
그 후 commit을 하고, 이상이 없는지 status를 해본다.
remote를 이용해 인증이 되어있는지 확인해본다.
최종적으로 내가 작성한 것을 깃허브에 push한다.
폴더 안에 잘들어갓는지를 확인해본다!
이상없이 들어간 것을 확인할 수 있다.
오늘은 깃에 대해 배웠는데 명령어도 너무 많고, 처음해보는거라 익숙치 않았다.
그래도 꾸준히 반복하면 나중에는 깃허브로 프로젝트를 할 수 있을거라 믿는다.
'Git' 카테고리의 다른 글
기존 Github repositories에서 git push하기 (0) | 2022.08.22 |
---|---|
Git 설치 (Windows) (0) | 2022.08.20 |
Git 명령어(clone,remote..) 오류 (Windows) (0) | 2022.08.20 |
댓글