useRef의 3가지 정의와 타입 알아보기 (feat. MutableRefObject, RefObject)

타입스크립트에서 useRef를 사용하다 보면 2가지 타입을 마주할 수 있는데, MutableRefObject와 RefObject의 차이에 대해서 알아보고 각 타입을 언제 활용할 수 있는지 알아보자. useRef 란? useRef는 리액트 훅의 하나로, 인자로 받은 값을...

Git reset 옵션 (hard, mixed, soft)

git reset 명령어에는 3가지 옵션이 존재한다. 각 옵션을 어떻게 주느냐에 따라서 활용도가 달라지는데, 로컬 커밋을 아예 제거해버리거나 로컬 커밋을 취소하면서 커밋한 파일들을 다시 작업 디렉토리에 돌려놓을 수 있다. git reset...

Git 커밋 되돌리기 (checkout, revert, reset)

가끔 개발하다 보면 실수로 커밋을 잘못하거나, 커밋에 파일을 누락시키거나, 커밋을 되돌려야 하는 상황이 온다. 커밋을 되돌릴 수 있는 방법 3가지와 각각의 차이에 대해서 알아보자. 현재 커밋 히스토리 Git checkout 원하는...

Git rebase vs. merge 차이

브랜치를 합치는 방법은 두 가지가 있는데 rebase와 merge의 동작 흐름과 차이에 대해서 알아보자. 알고 있는 개념이긴 하지만 이번 기회에 헷갈리는 부분들을 명확히 하고자 정리한다. 이제 헷갈려서 자꾸 구글링에 시간 쓰는...

Github 블로그 SEO 설정하기 (feat. 구글 검색엔진)

블로그를 만들었는데 구글에 아무리 검색해도 나오지 않는다 🤔. 코드를 확인해보니 현재 사용하고 있는 테마는 jekyll-seo-tag 플러그인을 이용해서 기본 meta 태그들은 생성이 되어있다. 구글 검색엔진에 블로그 글이 뜰 수 있도록 설정하는...