본문 바로가기

TIL

200204_TIL ( git remote 저장소, nvm, npm)

오늘 배운 내용

(이라고 하지만, 0202 ~ 0204 동안 배우고 익힌 개념에 대해 주저리주저리 해볼까 한다.)

  1. git remote 저장소

    • 개발자로서 여러명의 팀원과 프로젝트를 진행할 때에, 깃 허브를 사용하면 수월하게 프로젝트 파일을 공유할 수 있다. 한 사람의 프로젝트 총괄자(시작점)가 깃을 만들고, 그 깃을 팀원이 fork해서 개인 작업환경으로 clone 할 수 있다. 프로젝트가 진행됨에 따라 개개인이 필요한 작업을 통해 파일들을 만들어내거나 수정한다. 공유할 때에 여러가지의 파일들이 섞이고, 버전들이 섞이는 경우가 발생할 수 있다.
      이러한 경우를 방지하기 위해 git remote 저장소를 사용한다. 개인이 작업한 결과물을 js git push origin master 라는 명령어를 통해 깃허브에 저장할 수 있다. 이것을 팀원과 공유하고 싶다면! js git remote add 'nickname' 'git url' 라는 명령어를 통해 팀원들의 깃 주소를 remote 저장소에 저장한다. 그리고 원하는 팀원의 remote 저장소에서 js git pull 'nickname' master 라는 명령어를 사용해 가져올 수 있다. 이러면 서로의 프로젝트 파일은 병합이 되어 혼선을 방지할 수 있다.

      cf) 추가적으로 동시에 같은 파일을 수정하다가 pull 해오는 경우, 충돌이 일어날 수 있다. push 를 하거나 stash 를 하라는 문구가 발생할텐데 당황하지 말고 push 후, pull 해와서 충돌한 부분을 합의하에 최종적으로 수정한다. 그리고나서 push 하면 되는데, 정말로 push 할거냐는 경고?가 뜨면 js :₩q 를 치고 나가버리면 push 된다고 한다.

  1. nvm, node.js, npm ...

    • nvm 은 node version manager 의 약자로서 node.js 라는 프레임워크를 활용하기 위해 설치하는 '관리자 프로그램'의 개념으로 받아들였다. node.js 라는 프레임워크는 버전이 여러가지가 있지만, 기업의 입장에서 늘 새로운 버전을 사용하기에는 제약이 있다. 제휴를 맺은? 협업하는 타 개발자 혹은 기업들이 최신의 버전을 쓰지 않을 수도 있다. 그렇기 때문에 LTS 라는 버전을 선호한다고 한다.
      하지만 개발자는 새로운 기술과 트렌드를 빠르게 자신의 것으로 만들어야 경쟁력이 생기기 때문에 새로운 버전도 익혀야 할 것이다. 이러한 경우를 위해 두가지 버전을 받아놓은 후, nvm 을 활용하여 필요에 따라 선택적으로 node.js의 버전을 골라서 사용할 수 있다고 한다.
      npm 은 node pakage manager 의 약자로 node.js 를 사용하면서 유용하게 쓸 수 있는 pakage 의 묶음으로 이해했다. 터미널에서 js npm ~~ 라는 명령어를 통해서 npm 에 접근 할 수 있다.

      최종적으로 정리하자면 가장 상위의 개념이 nvm 으로 node.js 를 관리하는 관리자 툴이고, 가장 하위의 개념이 npm 으로 node.js 의 사용에 도움을 줄 수 있는 pakage 라고 생각하면 될 것 같다.

  1. jest, Eslint
    • jest 는 내가 작성한 코드가 제대로 작동하는지 확인 할 수 있는 pakage 이다. 직접 test-case 를 작성할 수 있다.
    • Eslint 는 작성하는 코드의 스타일을 통일시켜주는 pakage 이다. 규칙을 정해놓고, 그 규칙에 맞지 않으면 빨간줄을 그어 오류를 표기한다. 프로젝트를 진행하며 많은 인원이 참여하게 될 경우, 다양한 스타일의 코드가 발생할 가능성이 있다. 이러한 경우 Eslint 를 활용한다면 혼동하지 않고, 프로젝트를 진행할 수 있을 것이다.

처음에는 이 모두 생소한 개념이라 무지... 힘들었다... node.js 의 pakage 를 터미널로 받아 설치한다는 방법부터, 프로젝트 단위, 즉 폴더 단위로 다운받아야 한다는 사실까지... 그래도 3일간의 과정을 통해서 조금은 이해하고 익숙해지며 개발자에 한걸음 다가갈 수 있었다고 생각한다..(착각은 아니겠지ㅠㅠ)
+) 마치 제목이 2002년 04월 이라고 쓴 것 같아지는걸 보며 벌써 2020년이구나 싶은... 그렇다.. 하하

'TIL' 카테고리의 다른 글

200207_TIL (자료구조_Linked-List)  (0) 2020.02.09
200206_TIL (자료구조_Stack & Queue)  (0) 2020.02.06
200116_TIL  (0) 2020.01.16
200115_TIL  (0) 2020.01.15
200114_TIL  (0) 2020.01.15