* 학습 내용
- git과 github 정의 및 개념
- git bash 명령어
1. git과 github 정의 및 개념
1.1. git이란?
- 소스 코드의 변경 사항 내역을 관리하는 분산 버전 관리 시스템
- git bash를 통해 형상관리(버전 관리)
- 코드 변경 추적, 변경자 추적, 코딩 협업이 가능
1.2. github란?
- 원격 중앙 저장소
- 개발자 간의 협업을 위해 중앙 서버 역할을 하는 서비스
즉, 구글 드라이브처럼 소스 코드를 업로드 및 다운로드하여 협업을 통해 코드 개발이 가능한 서비스
- 협업을 위한 코드 review, document 생성 및 관리 등 개발 프로젝트 운영에 필요한 여러가지 기능을 제공해줌
- github 외에 gitLab, bitbucket 등이 있다.
1.3. git 시스템
git의 local repository에서는 크게 3가지 영역이 있다.
① Working directory (또는 working tree라고도 함)
: 현재 작업하고 있는 위치로 관리(추적)가 되는 파일과 관리(추적)되지 않는 파일로 나뉘어져 있다.
관리(추적)이 된다는 의미는 파일의 생성, 수정, 삭제 등의 히스토리 정보를 모두 가지고 있다는 뜻이다. 형상관리하고 싶은 파일은 'git init [관리할파일명]' 명령어를 통해 관리 등록 가능하며 git init을 하지 않는 파일은 수정내역이 있어도 history 추적이 불가능하다.
② Staging area
: 'git add [stage에올릴파일명]' 명령어를 통해 working directory에서 stage로 작업을 옮기는(?) 작업.
repository에 저장되기 전에 거치는 중간 단계. working directory에 있는 모든 작업 파일들을 commit(저장)하고 싶지 않고 일부 폴더만 commit하고 싶을 때 그 폴더들을 올리는 공간.
③ Repository
:저장 공간.
local에서 폴더를 만들고 git bash를 통해 'git init' 명령어를 입력하면 .git이 만들어진다.
이후 'git commit (-a) -m "메세지내용"'명령어를 통해 init한 수정 파일들이 repositiry로 저장됨.
+ remote는 github를 통해 url이 연결될 경우 commit한 파일을 'git push -u origin master' 명령어를 통해 github로 업로드하는 cloud repository이다.
2. git bash 명령어
순서 | 명령어 | 의미 |
1 | git config --global user.name '사용할유저이름명' | git commit에 사용될 user name |
2 | git config --global user.email '사용할이메일' | git commit에 사용될 user email |
3 | git init | .git init 생성. 현재 디렉토리를 로컬저장소로 설정 |
4 | git add [파일명 또는 .] | 파일을 stage 영역으로 옮김 |
5 | git commit -m 'commit메세지' | stage 파일을 로컬 저장소에 메세지와 함께 저장 |
6 | git remote add origin 원격url | 로컬 저장소와 원격 저장소 연결 |
(git remote -v) | (연결된 원격저장소 확인) | |
7 | git push origin master | 원격 저장소에 저장 |
8 | git pull | 원격 저장소에 존재하는 최신 수정본 파일을 내 로컬 저장소로 업데이트 |
+ | git pull origin master | 내 코드를 업로드하기 전에 업데이트 된 레포지토리 코드를 내 로컬에 다운로드 |
++ | git push --set-upstream origin master | master에 업로드 |
그 외 git bash 명령어
명령어 | 의미 |
git status | 로컬 저장소의 현재 상태 확인(commit이 안된 파일이 있는지 여부 등) |
git log | commit한 히스토리 확인 |
git remote -v | 연결된 원격저장소 확인 |
git config --list | git commit에 등록한 이름과 이메일 history 조회 |
그 외 리눅스 명령어
명령어 | 의미 |
cd [디렉토리 주소] | 현재 위치에서 입력한 주소 디렉토리로 위치를 바꾸겠다는 의미 |
pwd | 현재 위치 |
history | 명령어 입력한 내역 조회 |
ls -a | 숨어있는 파일명까지 전부 조회 |
ls | 해당 디렉토리에 있는 파일들 간략히 조회 |
mkdir [생성할폴더명] | 해당 디렉토리에 폴더를 새롭게 만든다 |
touch [생성할메모장파일명] | 확장자 .txt로 새롭게 메모장 파일을 만든다 |
clear | cmd 창 내역을 한번 깨끗하게 정리하고 싶을 때 |
exit | cmd창 종료 |
q | 문서 나가기 |
'Edu > 02. Git_N_Github' 카테고리의 다른 글
최신 커밋 수정하기 (0) | 2021.07.18 |
---|---|
장문의 커밋 메세지를 남길 때 (0) | 2021.07.18 |
커밋 히스토리 (0) | 2021.07.18 |
Markdown 작성법 (0) | 2021.07.18 |
git clone: 레포지토리 내 로컬에 다운받기 (0) | 2021.07.18 |