2023.05.15 월요일 TIL

ctrs·2023년 5월 15일
0
  • Git&GitHub 강의
  1. 깃 실행 방법
    시작 -> git bash
    'git bash'는 Windows 운영체제 환경에서 리눅스 커맨드를 사용하기 위해 사용한다.

git bash를 통해 사용할 수 있는 CLI 명령어
pwd 현재 경로 확인
ls 디렉토리 내용 조회
ls -al 숨김 파일(.filename)을 포함하여 디렉토리 내용 조회
cd (경로) 해당 경로로 디렉토리 이동
cd .. 상위 디렉토리 이동
cd . 현재 디렉토리
cd ~ 홈 디렉토리 (웬만하면 접속한 사용자 디렉토리)
touch 빈 파일 생성
cat 파일 읽기

vi 편집기
입력모드 돌입 i
입력모드에서 빠져나오기 esc
저장 w
vi 편집기 닫기 q
저장 후 닫기 wq

파일 삭제 rm
mkdir 디렉토리 생성
rmdir 디렉토리 삭제
rmdir -rf 디렉토리 강제 삭제(내용이 들어있는 디렉토리도 삭제 가능)

깃 - 변경사항(버전, commit)을 일목요연하게 관리하기 위해 만들어진 도구
변경 내역들을 기억하며 필요하다면 작업을 되돌리고 여러명의 코드를 쉽게 나누고 합치며 개발하는 것

깃허브 - 원격 저장소 호스팅 서비스 + 개발자들의 SNS

git config -l (현재 등록된 정보 확인)
git config --global user.name "이름" (이름 등록, 가급적 영어로 할 것)
git config --global user.email "email address" (이메일 주소 등록, 깃허브 가입한 주소일 것)

깃이 관리하는 3개의 공간
1) 작업 디렉토리
버전 관리의 대상이 위치하는 공간 (.git 디렉토리)

2) 스테이지 index
다음 버전이 될 후보가 올라가는 공간

3) 저장소 repository
버전이 만들어지고 관리되는 공간

  • 로컬 저장소 (현재 사용중인 컴퓨터)
  • 원격 저장소 (깃허브 등 클라우드 환경)

깃의 흐름
작업 디렉토리에서 변경 사항을 만들고
유의미한 변경 사항을 스테이지에 올린다 (add)
그 중 변경을 적용할 내용을 저장소에 올린다 (commit)

명령어 정리
git init 로컬 저장소 만들기
git status 작업 디렉토리 상태 확인하기
git add (스테이지에 추가할 대상) - 스테이지에 올린다
git add . 현재 디렉토리에 모든 변경 사항을 스테이지에 올린다
git commit 자세한 커밋 메시지와 함께 커밋할 때
git commit --message "커밋 메시지"
git commit -m "커밋 메시지" 간단한 커밋 메시지와 함께 커밋한다.
커밋 메시지는 개발자 간의 아주 중요한 의사소통 수단이기 때문에 되도록 자세히 적어주는 것이 좋다.

git log 버전 조회
git log -p / git log --patch 각각의 커밋이 어떤 애용이 변경되었나 확인할 수 있다. 커밋별 변경 사항 조회

git dff 최근 커밋과 작업 디렉토리 비교하기
git diff --staged 최근 커밋과 스테이지 비교하기
git diff A B (A 커밋에 비해 B 커밋이 무엇이 다른가? 순서에 유의할것)

브랜치 관리하는 방법
브랜치(나뭇가지)는 깃이 존재하는 이유라고도 할 수 있다.
브랜치는 버전을 여러 개의 흐름으로 관리하는 방법 (버전의 분기)

브랜치가 없다면 서로의 작업과 전혀 관련 없는 부분과 같은 코드를 다르게 수정한 부분이 혼재된다
일일이 수작업으로 합쳐야 한다
때로는 서로의 코드를 합치다 실수가 생길 수도 있다.

git branch 브랜치를 조회한다
git branch (브랜치 이름) 새 브랜치를 생성한다
git checkout (브랜치 이름) 작업 환경을 다른 브랜치로 변경한다
git checkout -b (브랜치 이름) (브랜치 이름)을 생성하고 그 브랜치로 체크아웃한다
git branch -d (브랜치 이름) 브랜치를 삭제한다. 단, 현재 사용중인 브랜치는 삭제할 수 없다.

second 브랜치에서 A 파일을 생성, 커밋 한 뒤
다시 master 브랜치로 돌아오면 A 파일을 찾을 수 없다

git merge (브랜치 이름) 브랜치 이름과 병합한다

profile
저장을 습관화

0개의 댓글