20201130

Judo·2020년 11월 30일
1
post-thumbnail
post-custom-banner

런타임


프로그래밍 언어가 동작할 수 있는 프로그램 (환경)
예) Browser

node.js


새로운 JavaScript 런타임

node에서 실행시키키

% node <file_name>

nvm


  • Node Version Manager
  • nvm을 이용해 node를 설치하고, 다양한 node veersion을 변경할 수 있다.

npm


  • Node Package Manager
  • 필요한 모듈을 다운로드할 수 있는, 모듈들이 모여있는 모듈 스토어

package.json


  • 프로젝트에 포함된 모듈 정보를 제공해주는 역할
  • 제품 카탈로그와 비슷하다.
  • 프로젝트 코드 전달할 때, 모듈을 다 넘겨주는게 아니라 package.json을 보내서 사용자가 필요한 모듈을 다운받도록 한다.

package.json 구조

  • dependencies

    • 프로젝트가 돌아가기위해 반드시 필요한 모듈 정보를 제공한다.
  • devDependencies

    • 프로젝트를 개발하는 환경에서 필요한 모듈 정보를 제공한다.
    • lint, 테스팅 모듈 등
  • scripts

    • npm으로 실행시킬 수 있는 명령어 정의
    • 명령어를 입력하면 어떤 동작을 하는지 적혀있다.
      "scripts": {
      "start": "node app.js",
      "test": "node test.js",
      }

  • nvm, node.js, npm 을 배웠다.

  • git workflow에 대해 공부했다.

    • 페어와 학습하면서 git fork, clone, add, commit, push, pull을 이용해 remote 저장소와 local 저장소 개념에 대해 이해했다.
    • 추가적으로 git checkout -b branch를 통해 branch를 생성해보았고 remote 저장소에 있는 branch를 `git checkout -t <remote이름/branch이름>내 local로 가져오기도 했다.
    • 동일한 remote에 push, pull을 하면서 conflict을 발생시켰다. conflict을 발생시키면서 알게된 발생원인 중 하나는 협업 개발자가 push를 한 이후에 pull로 최신화를 하지 않고 commit-> push를 하면 conflict가 발생한다는 것이다. 이 충돌을 해결하기 위해 pull을 해서 master branch 코드를 가져오고 알맞게 수정 후 commit -> push를 하면 merge가 되고 해결된다.
    • master branch를 commit하고 기능 추가, 버그 수정 등을 위해 다른 branch를 생성해 작업을 진행하고 이후 master branch에 merge하는 흐름에 대해 학습했다.
profile
즐거운 코딩
post-custom-banner

0개의 댓글