- 시작하게 된 계기 및 다짐 😮
이번 코드스테이츠의 백엔드 엔지니어링 개발자 부트캠프
에 참여하게 되면서 현직개발자 분들의 빠른 성장을 위한 조언 중 자신만의 블로그를 이용하여 배운 것 들을 정리하는게 많은 도움이 된다 하여 시작하게 되었다.
- 학습 목표 😮
목표 | 결과 |
---|---|
GitHub와 Git의 이해 | O |
Local/Remote Repository 이해 | O |
협업을 위한 Git 이해 | O |
Git 실습 | O |
- 정리
#Git_버전 관리 시스템(VCS) : 프로그램의 버전 관리 시스템
# Git : 소스 코드 기록 관리 분산형 버전 관리 시스템 (ex.시스템)
# GitHub : 클라우드 기반 Git Repository 관리 서비스 (ex.블로그)
# 스냅샷 : 특정 시점에 생성된 백업 파일 ( Commit 이용)
# Git_Repository
- Local : 나의 작업 공간
- Remote : 공유 작업 공간
- Fork : 다른이의 Repogitory -> 나의 remote_R 로 가져오기
- Clone : 나의 remote_R -> Local로 가져오기
- push : 나의 Local_R -> remote_R 보내기
- Pull : remote_R -> Local_R 변경 사항을 가져오기
- commit : 해당 버전 저장(기록)
$ git config --global user.name "나의 사용자 이름"
$ git config --global user.email "내 이메일 주소"
==> global 옵션 : 각 다른 이름 사용시 제거
★★ git config --list : git 설정한 모든 것을 보여줌
# SSH : 공개키(비대칭 키) -> $ ssh-keygen
==> id_rsa ( 비밀/개인 키) 와 id_rsa_pub (공개키) 생성
# git config --global core.editor nano : 커밋 시 nano 변경
(참고자료 : https://git-scm.com/book/ko/v2/%EC%8B%9C%EC%9E%91%ED%95%98%EA%B8%B0-Git-%EC%B5%9C%EC%B4%88-%EC%84%A4%EC%A0%95)
# Staging Area : Local_R 로 가져와 git의 관리하에 들어간 상태로 작업하는 공간
# 1. Git _ 혼자 작업하는 순서
($git log : 이력 보기)
$git clone <repogitory 주소> : Remote_R -> Local_R
-or 파일 생성 후,
$git init , and , Github의 레포지토리와 연결(git remote)
$git status : Local_디렉토리의 파일들의 상태 보기
$git add : unstaged(untracked)상태의 파일을 staging area에 올리기
==> git add. or git add <file name>
$git restore : 아직 staging에 올라가 있지 않은 파일들을 초기화
$git commit -m "message"
==> remote에 변경된 local 내용 변경
$git reset HEAD^(1) : 가장 최근에 commit 한 내용을 취소
$git push <origin> <branch>
# 2. Git _ 협업 작업
$git init : 현재 내가 작업하는 폴더로 가서 실행
==> git에 연동
$git remote add origin <repository 주소> : Remote_R 과 연동
==> Github에 새 repogitory 생성 후 이 주소
$git remote add pari <repositoy 주소> : 상대방의 remote_R 과 연동
==> git remote remove pair : 페어 해제
$git remote -v : 현재 연결된 모든 Remote_R 보기
$git pull <wanted_name> <branch> : 내 Local_R 에 가져오기 자동병합
ex) git pull pair main or git pull origin master
==> 오류 발생시 git status 를 통한 파일 확인
==> 해당 파일 오류 수정 후 Staging area로 추가
$git add. -> git commit -> git push origin master
# git merge --abort : 합병 해제
git rm -rf : 원격 저장소(remote repository)와 로컬 저장소(Local repository) 모두 지우는 명령어
git rm -r --cached : 원격 저장소에 있는 파일만 지우는 명령어
- 피드백 😮
실제로 현업에서 많이 사용하는 Github를 처음으로 접해 보았는데 페어와 함께 같이 작업을 해보았는데 굉장히 효율적으로 같이 작업을 할 수 있었다.
이는 백엔드 개발자가 아니여도 굉장히 많이 사용할 것이기 때문에 꾸준히 git을 이용하여 commit하며 익혀 놔야 할 것 같다.
- 앞으로 해야 될 것 😮