개발자가 사용하는 필수 도구인 Git에 대해 알아보자 !
Git 이란 무엇인가 ? Github 활용하기의 모든것 !
ㅡ설치, 설정 및 세팅,ssh key 등록 -윈도우 버전, 오류시 작동법, 기본동작원리, 기본 용어
에 대해 차근 차근 알아보자 !!
* Git (Configuration Management Tool)
ㅡ형상관리도구 , 버전관리 시스템 중 하나 이다.
ㅡ 소스코드를 효과적으로 관리할 수 있는 시스템이다.
( 여러명 동시 작업, 다른 기능의 버전 코드 유지와 관리, 해당 시점으로 돌릴 수 있음, 변경된 이력 확인)
ㅡ git 공식 사이트의 Documentation > Reference 활용하기
* Git 기반의 서비스 ㅡ Github , Bitbucket, Gitlab
Bitbucket : 커뮤니케이션 위주 ,QA작업 , Atlassian 제품
Gitlab : 설치형 git , 보안 좋음 , 설치해서 내부에서 관리가능 , 용량비용절감
Github : 가장 대중화 되어 있음. 저장소 호스팅 서비스 제공,
그렇다면 Github 사용을 위해서 Git설치를 먼저 해보자 !
* Git 설치 - 윈도우 버전
1. git scm 을 크롬에서 검색 , 설치
https://git-scm.com/download/win
2. git bash 로 설치 확인하기
Git Bash 열어서 명령어를 차례차례 입력하기. 설치 확인함
$ git --version
$ git
다음으로 Github
1. 가입하기
2. SourceTree설치 : Git을 더 쉽게 활용하게 하기 위한 GUI 툴 이다. (터미널 말고, 툴을 제공함)
ㅡ https://www.sourcetreeapp.com/
3. Git 사용자 설정
ㅡ로컬에서 사용할 Git사용자 이메일과 이름을 설정
git config : Git 에 관한 설정을 추가 / 변경/ 삭제하는 명령어
ㅡgit 의 파일 설정은 3가지 이다.
설정파일 System 설정 파일(모든 시스템 사용자에게 적용) : git config --system
Global 설정파일 (한 사용자의 전치 git repository에 적용) : git config --global
로컬 설정 파일 ( 하나의 repository에만 적용) : git config --local
1) Global git 사용자 설정하기
git config --global user.email"abc@abc.com"
git config --global user.name "Jung joo-jung"
git config --global user.email"3ii32@naver.com"
설정확인
git config --list
2) Github 계정에 ssh key 등록하기 ( 사용자인증 )
1. ssh key만들기
윈도우는 cmd대신 PowerShell 의 관리자권한으로 실행후 입력해준다 ! - 윈도우는 그래야 오류가 잘 없음 ㅠㅠ
ssh-keygen
1) ssh-keygen 입력 후 엔터
2) Enter file in which to save the key -> 공개키 생성 위치 이다, 엔터 !
3) Enter passphrase -> 패스워드입력 - 엔터
4) Enter same passphrase again -> 패스워드 재입력 - 엔터
5) C:\Users\<pc계정명>\.ssh 폴더 안에 > 공개키(id_rsa.pub)가 생성된 것을 확인할 수 있다.
</pc계정명>id_rsa.pub 파일을 메모장으로 열면 암호화타입, 암호화된 키를 확인할 수 있다. >> 복사하기
만약 열리지 않을때 는 !!
아래의 명령어 입력해서 , 암호 확인 후 복사 !!
cat ~/.ssh/id_rsa.pub
아래에 나오는 암호를 복사해서 Github에 SSH 암호로 등록해준다 !!!
2. Github접속 후 프로필 setting -> SSH and GPG keys -> New SSH key 등록하기
위의 내용처럼 복사한 암호를 Github에 SSH 암호로 붙여넣기 후 등록해준다 !!!
>> 완료하면 ssh key 가 내 아이디로 생성된것이 나옴 !
< 깃 초기화 및 삭제 >
초기화 명령어 : git init
초기화 할 대상 폴더에서 명령어 입력 ( 폴더 안에 숨김 폴더로 .git폴더 생성 )
삭제 명령어 : rm -rf.git
git 소스 삭제
cd . git 읽기
< gitignore 란 ? >
ㅡ 사용자가 git에 등록되지 않길 원하는 파일, 폴더들의 목록을 저장
ㅡ .gitignore 파일명으로 생성 후 주석, 폴더,파일을 ignore법으로 작성 해 주기.
( 등록된 파일(폴더)들은 커밋 시 자동으로 제외됨.)
ㅡ 작성법
- #은 주석의 역할
- 폴더 : /폴더명 ( 예 : /docs) / 파일: 파일명.확장자 (예: test.txt)
- 폴더 안의 특정 파일만 ( 예: docs/test1.txt)
- 폴더 안 특정 확장자 파일 전부 (예: /docs/*.txt)
- 폴더 하위 모든 특정 확장자 파일 전부 (예 : /docs/**/*.txt)
- 하위 폴더가 있으면 제외됨. 하위폴더 ignore설정 (예: docs/**/*.txt)
ㅡ 유용한 사이트 https://www.toptal.com/developers/gitignore
Git 기본컨셉
< 기본 동작 원리 4가지>
Working Directory : 소스코드 작성하고 있는 파일, 폴더
Staging Area : Git에 커밋(등록)할 파일이 미리 올라가는 영역
Local Respository : 로컬 Git프로젝트 저장소 , pc안에 저장됨 ,메타데이터와 데이터 정보가 저장되는 영역
Remote Repository : Github 등의 서비스를 통한 온라인 상의 저장소
< 기본 용어>
orgin : 원격(Github등 의 온라인 저장소)에 있는 코드
head : 내가 지금 ! 작업하고 있는 로컬 브랜치
add : Working Directory에서 Staging Area로 등록한다
commit : Staging Area 에서 Local Repository로 등록
Commit Message : commit시 함께 작성해 저장하는 메모
push : Local storage 에서 변경된 파일들을 Remote Respository에 업로드하는 작업
fetth: Reomote 원격저장소에서 변경된 파일들을 - Local Repository 에 끄집어 내서 가져오는 행위
merge : Local repository 에서 Working Directory 로 병합( 전달)
Branch : 독립적으로 어떤 작업을 따로 진행하기 위한 가지 , 가지치기
checkout : 사용할 다른 브랜치를 지정 ( 다른 시점, 브랜치로 지정 하는 것 , 버전을 바꾸는것 ?)
'IT 정보' 카테고리의 다른 글
[입문] Git / Github - ISSUES (0) | 2024.01.16 |
---|---|
[소스트리] 클론 오류, Github연동 (깃허브 연동, SSH passphrase) (0) | 2024.01.15 |
[IT] 프론트엔드 개발자란 ? 필요 역량? 준비 언어 ? 로드맵? 모든 것 ! (0) | 2024.01.03 |
[IT] 프론트엔드 개발자와 백엔드 개발자 차이 (0) | 2023.12.13 |
깃허브 (github) 무엇인가 ? (0) | 2023.09.04 |