패키지 매니저

김하은·2023년 1월 9일
0

설치, 업그레이드 관리
컴퓨터 패키지 관리, js런타임 관리

런타임:

프로그램이 실행되고있는 환경자체(브라우저 등)

js의 런타임. 기존에는 웹브라우저로 한정.
==> 쓰다보니 편함.--> 그래서 js를 브라우저 밖으로 꺼내게 되는것이 node.js

js가 브라우저가 아니라 외부에서 동작할 수 있게하는게 node.js,
npm과 yarn을 이용해 설치, 업그레이드.

두가지 차이 yarn 이 빠름.
그러나 요즘에는 npm이 업그레이드 되면서 차이 없어짐.
버전잠금 ==> 업그레이드시 버전이 바뀌는것 방지.

보안면: creat-next-app 하면 리엑트, 노드모듈즈, 등 여러가지가 설치됨.
yarn 은 yarn.lock, package.json을 읽어 그부분만 설치함.
npm의 경우 의존하는 다른것들들 자동으로 설치해 실행함. ==> 보안문제.

중복설치 ==>yarn 자동으로 수정해줌.

npm ==> 중복설치되어 노드모듈즈 용량 무거워짐.


package.json

프로젝트에 필요한 정보를 담아놓은 카탈로그....

프로젝트의 이름, 버전, 공개/비공개 상태, 명령어정보(scripts부분에)

package.json은 그 프로젝트 폴더에만 존재한다. npm이나 yarn은 이것을 읽고 패키지를 설치하고, package.json이 있는 곳에서면 패키지가 설치된다.(node_modules)

각각의 폴더마다 있어야하고, 각각의 폴더에서 yarn install로 node_modules설치.(패키지 설치하는것.) gitignore에 넣기!!.


localhost:3000 ===> 루프백(내가 사용하는 컴퓨터를 그대로 서버로 만든것.)
127.0.0.1 ==> 동일.(내 컴퓨터로 접속)

:3000 ...??

포트 라고함. 목적별로 나눔.

80 또는 8080 => http 비보안 통신에 사용.

443포트 => 보안 통신에 사용.

yarn dev 여러번 ---> already use 3000
이미 사용중인 포트이다.
다른포트로 자동으로 배정.

사용하지 않는 서버 프로그램(yarn dev)는 반드시 종료해줘야함. (컨트롤 +C)

모든 프로그램 종료(포트 종료)했는데도 포트가 사용되고있다고한다. =--> port kill 할 수도 있지만, 컴퓨터 재부팅을 하면 됨.


git 사용하기

git에서 충돌(conflict)나면 알려줌.

git 저장소 ==>repository(작업한 모든 폴더, 모든 파일을 저장해놓음. )
같은 파일이라도 내용다르면 다른것으로 기록하여 다른버전으로 저장.

local repositiory(로컬저장소 ==> 내컴퓨터)
Remote repository(원격저장소 ==> git 등)==> 노드모듈즈 용량이 크니 gitignore에 추가하여 원격저장소의 저장공간 아끼기.


git init

새로운 git 저장소 생성

git clone

저장소 복제

commit
=> 폴더나 파일의 변경사항을 기록하는것. =---> 시간순으로 기록됨.
commit 은 중간중간 하기, commit에서 이전으로 돌아가는것 어려움...

branch : 동일한 코드 기반으로 다른 작업할때 생성하여 독립적인 작업을 진행.
master코드를 건드리지않고 작업하기위해 사용.

합칠때 : git merge

git add ==> 스테이징한다.(임시저장함).
완전히 커밋전에 스테이징 단계있음. 여기서 커밋할대상 판단, 되돌리기 가능


md => 마크다운의 약자


머지에는 여러가지 있음.
3-way-merge주로 이용.

병합할 주 브랜치에서 작업. (병합 당할 대상브랜치는 병합하면 브랜치자체가 사라지게됨)

git switch master
git merge dev

커밋할 이름정하라는 에디터가 뜨는데 일단은 컨트롤+x를 사용해 종료.

master브랜치에 합치기를 원하는데 master브랜치에 변화가 없다. (커밋사항이없다) 이때는 dev브랜치(병합할 브랜치를 ) master이라는 병합브랜치와 이름 동일하게....(fast-foward)


0개의 댓글