# Git 이란 ?
* 배경
버전 관리시스템의 한 종류입니다. 여러 파일을 하나의 버전으로 묶어 관리하는 것을 버전 관리라고 합니다. 장기간의 프로그램을 개발한다면 첫째날 개발버전을 Day1으로 저장하고, 다음날 Day2, 다음날 Day3 .. 이러한 방법으로 폴더를 만들고 관리할 것입니다. 이것을 버전 관리라고 부릅니다.
하지만 이런 관리 방식은 매번 변경되지 않은 파일을 저장하고 어떤 파일이 변경되었는지 찾기도 힘들기 때문에 효율적이지 못합니다. 따라서, 이를 전문적으로 관리하는 시스템이 필요하게 되었는데 이를 버전 관리 시스템이라고 합니다.
● 버전 관리시스템의 종류
1. 클라이언트-서버 모델
- 하나의 중앙 서버로 여러 클라이언트들이 각자 필요한 데이터만 가져와서 작업을 하고, 다시 중앙 서버로 보내어 통합하는 방식을 말합니다. (CVS, Subversion .. )
2. 분산 모델
- 하나의 중앙 서버가 존재하지만 여러 클라이언트들은 각자의 컴퓨터 저장소에 전체 사본을 가지고 작업하는 방식을 말합니다. (git)
● git의 장점
- 동시에 작업하는 사람들과 소스코드를 주고받을 필요가 없습니다.
- 같은 파일을 여러 명이 동시에 병렬 개발이 가능합니다.
- 변동 과정을 체계적으로 관리할 수 있고 언제든지 지난 시점의 버전으로 되돌릴 수 있습니다.
- 인터넷이 연결되지 않은 곳에서도 개발을 진행할 수 있으며 중앙 서버의 데이터가 유실되어도 다시 복구할 수 있습니다.
● Git 설치
1. git-scm.com/downloads 다운로드 windows를 클릭하여 다운로드합니다.
2. 기본설정을 유지하고 설치를 진행합니다.
# GitHub 란,
git으로 버전 관리한 코드를 올릴 수 있는 클라우드 서버입니다. 단순히 저장만 하는 것이 아니라 다른 유저들과 함께 코드를 공유하고 온라인으로 하나의 프로그램을 같이 제작할 수 있게 합니다.
● GitHub 가입
● commend 명령어
* pwd : 현재 디렉토리 경로를 표시합니다.
* ls : 현재 디렉토리에 디렉토리와 파일을 표시합니다.
* ls -al : 숨김폴더 확인합니다.
* cd : 다른 디렉토리로 이동합니다.
- cd .. : 폴더 밖으로 나오기
- cd haryang(폴더이름) - 폴더 안으로 들어가기
또는
* 폴더 안에서 shift + 오른쪽 마우스 클릭 -> git bash here 선택
* 로컬저장소 만들기
git init
* VsCode로 파일 생성
* 원하는 파일을 선택하기
git add README.md
* 아래 에러시 처리 방법
*** Please tell me who you are.
Run
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
to set your account's default identity.
Omit --global to set the identity only in this repository.
fatal: unable to auto-detect email address (got 'admin@DESKTOP-R2NKGM0.(none)')
* 메일과 이름 config
git config --global user.email apple@apple.com(gibhub 가입한 이메일)
git config --global user.name "김사과"(사용자 이름작성)
* 원하는 파일 commit 하기("" 큰따옴표안에 메세지 입력)
git commit -m "README.md 추가합니다"
* 로그 확인하기
git log
* 여러파일을 선택하기
git add .
* 여러파일은 commit하기
$ git commit -m "메인화면과 css파일생성"
* 로컬 저장소에 GitHub 저장소의 주소를 알려주기
git remote add origin https://github.com/park-haryang/gitTest.git
* 만든 commit을 GitHub에 푸시하기
git push -u origin master
▼▼▼
github 화면
* 원격 저장소를 내 컴퓨터에 받아오기(clone)
1. github에 url을 복사 후 아래 명령어 입력합니다.
git clone github.com/park/gitTest.git (폴더 생성)
git clone github.com/park/gitTest.git . (파일 생성)
* 폴더 및 파일 삭제
rm -rf gitTest
* 404 에러 생길시
제어판 -> 자격증명관리자 -> 윈도우 자격증명 -> github 로그인 확인하기
* 푸쉬하기
git push -u origin master
* 소스트리 다운로드
git init
로컬 저장소를 생성
folder
-----------------------
README.md
index.html
-----------------------
git 로컬저장소
-----------------------
스테이지
-----------------------
-----------------------
git add
folder
-----------------------
README.md
index.html
-----------------------
git 로컬저장소
README.md (초기화)
index.html (초기화)
-----------------------
스테이지
-----------------------
README.md
index.html
-----------------------
git commit
folder
-----------------------
README.md
index.html
-----------------------
git 로컬저장소
-----------------------
스테이지
README.md
index.html
-----------------------
* GIT으로 추적하는 파일의 4가지 상태
추적안됨, 수정없음, 수정됨, 스테이지됨
'🎨 Programming > Git' 카테고리의 다른 글
[Git/GitHub] Branch 브랜치 사용법 ( Feat. IntelliJ ) (0) | 2020.11.05 |
---|---|
[Git/GitHub] 세팅 / 연동 및 사용 ( Feat. IntelliJ ) (0) | 2020.11.04 |