❗ 서론
제목이 멋지다. "서론"
하지만 별건 없다. 혼자서 pull-request를 진행해본 이유에 대한 서론이라고 이해하면 될 글이다.
난 현재 회사에서 VanillaJS만 하다가 여러모로 욕심이 생겨 React와 TypeScript를 학습하는 중이다.
학습을 하며 진행한 첫 번째 사이드 프로젝트(https://github.com/Growing-Jiwoo/ModelRestaurant)를 완성하면서 든 생각이 있다.
"채용 공고에서 항상 보이던 pull-request는 도대체 뭘까 ?"
내 개발의 원동력은 항상 타 회사 채용공고에서 얻고는 한다.
왜냐하면 난 지금 솔직히 기술적으로 앞장서있는 회사의 개발자로 일하고 있지는 않다.
지금 회사는 프론트는 아무런 라이브러리 없이 Vanilla JS를 사용하고있고 협업을 하지않고 하나의 프로젝트의
웹 파트는 개발자 한 명이 이끌어가는 형태이다. 난 사실 이러한 모든것들이 마음에 들지 않는다.
왜냐하면 난 기술적으로 트렌드를 따라가고 앞장서있으며 협업하는 개발 환경을 원하기 때문에.
왜 React.js를 선택하고 왜 TypeScript를 써보고 싶냐고 묻는다면 장황한 이유 ? 그런건 없다.
한국이든 해외든 IT 시장에서 프론트엔드를 이끌어가고 있는건 React.js + TypeScript이기 때문이다.
한마디로 정의한다면 "IT 취업 시장에서 경쟁력있는 개발자"라는 수식어를 가진 사람이 되고싶기 때문이다
그리고 왜 갑자기 pull-request를 경험해보고 싶냐고 묻는다면 동일하게 장황한 이유 ? 그런건 없다.
트렌드를 따라가는 회사의 대부분? 아니 모두 pull-request를 사용해본 경험을 우대하고 필수로 내걸더라.
그래서 나도 해보려고 한다.
✔ 이 번 글은 서론 처음부터 알 수 있듯이 꽤나 가벼운 분위기로 이끌어가는 글 임을 서론 끝에서 짧막하게 읊고간다.
✔ 나름대로 꿀팁이고 github, git에 대한 내용이지만 가벼운 분위기와 잡설이 많은 글이므로 카테고리는 잡소리로.
❗ pull-request ?
요새 핫한 Chat GPT에게 "git pull-request에 대해서 쉽게 설명해줘" 라고 물었더니 답변해준 결과물이다.
참으로 이해하기 쉬운 문장임에는 틀림이 없다.
그럼 바로 pull-request의 사용법에 대해서 알아보자
❗ pull-request 사용법
remote, clone 그런건 혼자하다보니 필요가 없어서 쭉 뛰어넘겠다.
1. branch 만들기
git bash에서 터미널에 아래의 명령어로 branch를 만들면 된다.
git branch <branch 이름>
해당 명령어를 입력하면 branch가 생성된다
이 후에 만들어진 branch list를 보고싶다면
git branch
해당 명령어를 입력하면 만들어진 branch list를 볼 수 있다.
2. branch 이동
터미널에 아래의 명령어를 입력해 주시면 branch를 이동할 수 있다.
git checkout <branch 이름>
해당 명령어를 입력하면 밑에 사진처럼 branch가 이동 된 것을 확인할 수 있다 (나는 front-end로 이동)
3. git add, commit, push 해보기
add: add 다음에 온점(.)을 입력하면 add all을 의미한다. 몇 개의 파일만 add 하고 싶으면, git add 다음에 파일 이름을 입력해주면 된다.
git add .
git add <파일 이름>
commit: 커밋 메세지는 최대한 자세히 입력해주면 좋고 commit 메세지의 컨벤션을 정해두면 더 좋다 ! 내가 정한 commit 메세지의 컨벤션은 밑에 따로 다루겠다
git commit -m "메세지 입력"
push: push... 이름 그대로다
git push origin <branch 이름>
4. pull request 하기
push를 하고 나서 github에 해당 레파지토리에 들어가면 pull request 버튼이 활성화 되어 있을 것이다.
Compare & pull request 버튼을 클릭해준다.
5. pull request 내용 작성하기
버튼을 클릭하고 나면 해당 pull-request 데이터에 대한 메세지를 작성할 수 있다.
pull request를 작성할 때에는 내용을 명확히 적어주는게 좋다.
나는 어떤 PR타입인지와 구현 했으면 구현 사항, 수정 했으면 수정 사항 등등 자세한 내용을 적기로 했다.
6. Merge 후 branch 삭제
사진을 찍어두지 못했지만 Merge를 성공하면 branch를 삭제하겠냐고 묻는 버튼이 나온다.
난 일단 Merge를 성공하면 branch를 삭제하는 편이고 Merge 성공 시 해당 branch를 자동으로 삭제하는 기능도 켰다.
branch의 변경 사항이 성공적으로 병합되면 더 이상 branch를 유지할 필요가 없다고 한다.
왜 git pull request에서 merge 성공 후 merge를 성공한 branch를 삭제하는 이유를 알아보자면
더 이상 필요하지 않은 branch를 너무 많이 유지하면 리포지토리가 복잡해지고 관리하기가 더 어려워질 수 있고
merge된 branch를 삭제하면 향후 혼란과 잠재적인 충돌을 방지하는 데도 도움이 되고 git 저장소를 깨끗하고 체계적으로 유지하는 데 도움이 된다고 한다.
자동으로 삭제하는 방법은 settings에 들어간 후 아래로 내려가보면
해당 부분이 있는데 이 부분에 체크를 하면 된다.
끝 !
❗ 내가 사용하는 pr 컨벤션
코딩 컨벤션은 보너스 ㅎㅎ...
현재로써는 이렇게 사용하고있다. git과 관련된 컨벤션에 대해서 알아본건 처음인데
부족할지라도 일단은 부딪혀보자는 마인드이다.
git 컨벤션은 docs나 뭐 이것 저것 더 있던데 난 저거만 쓰면 충분할거 같아서 저렇게 표기해두었다.
https://github.com/Growing-Jiwoo/RealTime-Trading-Site
해당 링크는 현재 내가 처음으로 혼자 pr하며 프론트엔드 백엔드 북치고 장구치고 다 해보는 React.js와 TypeScript를 사용하는 두 번째 프로젝트이다.
백엔드는 전에 Django를 잠시 찍먹했던 경험과 ChatGPT를 최대한 활용해서 만드는 중이다
해당 프로젝트는 내가 최근에 실시간으로 변하는 데이터를 처리 ? 출력 ? 하는 웹사이트를 만들고싶다는 생각을 항상 가지고 있었다 그러다가 내가 최근에 향후 1년 이상동안 쓰지않을 돈으로 인생 처음으로 주식을 경험해보는 중인데
주식에 대한 웹사이트를 만들어보면 어떨까라는 생각을 가진 채로 진행되고있는 프로젝트이다.
왜냐하면 주식은 table도 써야하고 chart도 써야하고 css도 꽤나 많이 쓰일것이고, 특히 "실시간 데이터"를 다루기엔
최적이라고 생각했다. 그래서 하는거다.
이 번 프로젝트의 목표는
1. 상태관리 라이브러리 recoil 경험해보기
2. TailWind CSS 경험해보기
3. React-Query를 사용해서 실시간 데이터 관련 경험해보기
4. 너무나도 부족한 TypeScript 부딪혀보고 경험해보고 실력 쌓기
5. 양질의 포트폴리오. * 중요
이렇다.
여튼 화이팅.
'주절주절' 카테고리의 다른 글
입사한 지 2주째인 현시점에서 주절주절 (0) | 2024.06.17 |
---|---|
퇴사한지 3주가 조금 넘어간 현시점에서 주절주절 (0) | 2024.01.24 |
Feconf 2023 후기 ! (2) | 2023.10.24 |
서울 노들섬에서의 JSConf Korea 2022 후기 ! (4) | 2022.09.20 |
첫 글 (5) | 2022.06.17 |