우리가 Git 을 사용해야 하는 이유?
▶ 소스코드나 작업물을 관리할 때 편리하기 때문입니다.
Git 이란?
● Git은 분산형 버전관리 시스템 입니다. (Distributed Version Control System)
버전 관리 시스템이란? (Version Control System)
● VCS은 사용자 프로젝트에 포함된 파일의 변경 내역을 추적할 수 있도록 하는 도구 또는 방법론입니다.
소프트웨어 형상관리
SoftWare Configuration Management 줄여서 SCM이라는 단어를 쓰기도 하는데, SW 개발 및 유지 보수 과정에서 발생하는 소스코드, 문서, 인터페이스 등 각종 결과물에 대한 형상을 만들고 이를 형상에 대한 변경을 체계적으로 관리, 제어하기 위한 활동입니다.
형상관리는 일반적으로 version control, revision control, source control, source code management, SCM 등 동일한 의미로 사용됩니다.
▶ 기존 버전 관리 시스템은 중앙 서버에 소스코드와 history를 직접 저장하는 방식
▶ 분산 버전 관리 시스템은 여러 개발 PC와 저장소에 분산해서 저장하는 방식
중앙집중식 버전관리 - SVN(Subversion)
▶ 각 개발자만의 version history를 관리할 수 없다.
▶ commit 한 내용에 실수가 있을 시에 서버에(다른 개발자에게) 바로 영향을 미치게 되고 만약 중앙 서버에 문제가
생기면 협업이 불가능
분산형 버전관리 - Git
▶ 모든 작업자가 원본을 가질 수 있다.
▶ 개별 history를 관리할 수 있기 때문에 네트워크를 사용하지 못하는 상황에서도 대부분의 작업 진행이 가능하다.
Git은 누가 만들었을까요?
리눅스의 창시자인 리누스 토발즈가 Linux 커널을 관리할 목적으로 개발되었다.
▶ Microsoft 웹 서비스입니다.
gitHub는 분산형 버전관리 시스템(git)을 기반으로 소스 코드를 호스팅 하고, 협업 기능을 지원하는 서비스,
소프트웨어 개발 플랫폼입니다.
깃허브 주소 : https://github.com
깃 랩 주소 : https://about.gitlab.com
GitHub: Let’s build from here
GitHub is where over 100 million developers shape the future of software, together. Contribute to the open source community, manage your Git repositories, review code like a pro, track bugs and fea...
github.com
The DevSecOps Platform
From planning to production, bring teams together in one application. Ship secure code more efficiently to deliver value faster.
about.gitlab.com
Git
git-scm.com
모두 기본설정으로 설치
Git 저장소 만들기
저장소(Git repository) - 파일이나 폴더를 저장해 두는 곳
▶ Git은 원격 저장소와 로컬 저장소 두 종류의 저장소를 제공합니다.
▶ 원격 저장소(Remote Repository): gitHub와 같은 전용 서버에서 관리되며
여러 사람이 함께 공유하기 위한 저장소
▶ 로컬 저장소(Local Repository): 내 PC에 파일이 저장되는 개인 전용 저장소
Git bash를 사용합시다
▶ git bash는 window의 cmd , linux와 mac의 terminal 과 같은 역할을 한다.
▶ Git bash를 이용하면 window 에서도 리눅스의 명령어를 쓸 수 있다.
Git 명령어
● init
$ git init
: git init 명령어를 수행하면 숨겨진 폴더 .git 이 생성됩니다. 이것을 저장소라고 하는데 깃은 이 폴더의 모든 변경 내용을 여기에 저장합니다. 즉 .git 폴더를 지우면 더 이상 깃으로 폴더의 변경사항을 추적할 수 없습니다.
● status
$ git status
: 깃이 폴더의 현재 변경 상태를 보는 명령어입니다.
● reset
: 스테이징 된 (add 취소) 파일을 취소할 수 있습니다.
$ git reset A.txt
▶ 폴더의 전체 변경 사항을 취소할 수도 있습니다.
$ git reset *
● commit
: 깃이 폴더의 변경 내용을 저장하는 단위를 "커밋(commit)"이라고 부르는데, add 명령어 이후 Staging Area 상태에 등록된 파일들만 commit 을 할 수 있고 명령어 실행 후에 Repository에 저장된다.
$ git commit -m'첫번째 커밋 메세지 입니다'
▶ 매번 변경사항을 스테이징하고 커밋 하는 게 번거롭다면 -a 옵션을 사용하자.
$ git commit -am'add와 commit을 한번에 할 수 있습니다'
● log
: 스테이징을 거쳐 커밋 한 결과를 로그(log)라는 형식으로 확인합니다.
$ git log
▶ 많은 로그를 한 줄로 편하게 보기 위해서 --oneline 옵션도 자주 사용합니다.
$ git log --oneline
cd .. 뒤로가기
tap 자동완성
git add * 모두 추가
git config --global user.email "dobear7@naver.com"
git config --global user.name "dokwonjae"
git checkout 이동할 위치 명시
git clone 원격 저장소 복제
1. 폴더 생성하기
2. 개인 저장소 생성하기 (git 명령어 사용)
3. cd .. , cd path… , ls 명령어를 확인해 보자
4. 개인 저장소를(로컬저장소) 만들어 보자 - git init
5. git 명령어 알아보기
6. git status
7. 파일들을 추적 가능한 상태로 만들기 - git add [파일명]
8. git commit -m’이력내용저장’
9. 사용자에 이메일과 사용자 이름이 등록이 안되었으면 먼저 설정하고 진행하기
10. git config 파일 확인해보기 (git cofig —list) 명령어로 확인하기
11. 스냅샷 찍어서 현 시점에 상태에 파일을 저장해 두기 ( git commit -m’이력내용’ )
12. git log 명령어를 통해서 이력을 확인해보자. git log —oneline
13. git status —> git add * —> git commit -m’…’ —> git log —oneline
14. 버전(HEAD) 원하는 곳으로 이동해보기 git checkout 이동할 위치 명시
15. HEAD를 다시 최신 상태로 되돌아 가고 싶다면 ( git checkout - )
원격지에 올리기 git push
https://www.toptal.com/developers/gitignore
gitignore.io
Create useful .gitignore files for your project
www.toptal.com
집에서 git을 통해 코드 가져오는법
더 이상 내려받을 파일 없을 때
'Git' 카테고리의 다른 글
Github desktop 설치 (0) | 2023.09.05 |
---|---|
Git2 (0) | 2023.08.09 |