S1U7

semin·2023년 4월 24일
0

section 1

목록 보기
10/11
post-thumbnail

UNIT 7 : Linux / Git 기초
on mac os

Ch1. Command Line Interface

Terminal

  1. Launchpad > Terminal
  2. Spotlight search > Terminal
  3. ⌘ + Space

CLI / GUI

Graphical User Interface : 그래픽 표현으로 컴퓨터 언어를 몰라도 조작 가능
Character User Interface : 직접 문자를 입력하는 인터페이스

basic commands

pwd : print working directory, 현재 위치 확인
mkdir : make directories, 폴더 생성
ls : list, 특정 폴더에 포함된 파일, 폴더 확인

  • ls -l : 폴더, 파일의 포맷을 전부 표현
  • ls -a : all
  • ls -al or ls -la
    dash 뒤 옵션의 순서는 상관없음

open . : 현재 위치를 GUI로 실행
cd : change directory, 폴더에 진입

  • cd + 경로 입력시 진행 중인 폴더 즉시 이동 (cd ~/helloWorld/hello)

touch : 파일 생성
cat : 파일 내용을 터미널에 출력
rm : Remove, 폴더나 파일을 휴지통 거치지 않고 삭제

  • -rf : 폴더 삭제시 사용 옵션. r은 "recursive", f는 "force"

mv : move, 폴더나 파일의 이름, 위치 변경
cp : copy, 폴더나 파일 복사 (cp+원본+복사 대상)

run as administrator

Absolute path / Relative path

Absolute path : /Users/username/folder1/folder1_1/
Relative path : 현재 위치를 기준으로 표현.
현재 폴더: '.', 상위 폴더: '..', 폴더 내부: '/'
'./': "현재 폴더 아래의"

root permission

whoami : 현재 로그인 사용자 확인
sudo : 관리자 권한 획득

  • sudo 사용해 생성된 폴더의 소유자: root (관리자 권한으로 생성)
  • sudo 미사용 폴더: 사용자 소유 폴더.

nano : text editor

터미널에서 자유자재로 다룰 수 있는, 가장 사용하기 쉬운 Editor
nano filename : open file in nano

Ch2. package

package manager

  1. Xcode Command Line Tools 설치
    xcode-select --install
  2. homebrew 설치
    https://brew.sh/ > copy script > paste on terminal
    Next steps 뒤의 안내 명령어를 터미널에 붙여넣기
    brew help: 정상 설치 확인

brew

brew update : brew 자체 업데이트
brew outdated : 업데이트 필요 목록 조회
brew upgrade @@ : 업그레이드
brew search @@ : 검색
brew info @@ : 정보 확인
brew install @@ : 설치
brew uninstall @@ : 삭제
brew list : 설치 프로그램 확인

wget

URL 통한 파일 다운로드 프로그램
brew install wget

Ch3. node.js

nvm

Node Version Manager
nvm 설치

  1. wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash
  2. 터미널 재시작
  3. nvm --version

Node.js 설치

  1. nvm install --lts
  2. node -v

commands

  1. nvm ls : nvm 통해 설치된 Node.js version list
  2. nvm install nn.nn.nn : 설치 버전 삭제 없이 원하는 Node.js 버전 설치
  3. nvm use nn.nn.nn

npm

Node Package Manager
npm init : make new package.json
npm init -y : 정보가 생략된 package.json 생성
npm install : package.json 내 필요 모듈 다운로드

  • devDependencies : 실행과 관계 없이, 개발을 위한 의존성 모듈
    --save-dev 옵션과 함께 설치시 자동 추가
  • dependencies : 반드시 필요한 모듈 (underscore, React ... )
    --save 옵션과 함께 설치시 자동 추가
  • 협업시 프로젝트 설명 위해 필수 작성

npm run scriptname : 스트립트 실행

  • Frequently used script
  • npm run start : node.js 앱 실행
  • npm run test : 테스트 실행
  • npm run lint : 코드 검사

Ch4. Git

작업할 때: Local Repository
코드 공유: Remote Repository Upload

Commit : 특정 시점에 생성된 백업 복사본인 스냅샷을 만드는 작업
Fork : 프로젝트 원격 저장소의 소스 코드를 내 원격 저장소로 이동
Clone : 코드를 수정하기 위해 내 컴퓨터로 이동
Push : Remote Repository에 업로드
Pull: Remote Repository 변경 사항을 Local Repositor로 이동
Pull request: 내가 push한 코드 변경사항에 대해 반영 여부를 요청
Contribute : 오픈 소스 소프트웨어에 기능을 추가하고 개선하는 작업

setting

  1. type git on terminal to download Software

  2. 앞으로 진행할 Git 커밋 내역에 기록될 사용자 이름, 메일 주소 설정
    git config --global user.name "yourusername"
    git config --global user.email "yourmailadd"

  3. (vi에 익숙하지 않다면) change editor
    git config --global core.editor nano

  4. Additional Authentication : SSH
    4-1. Create SSH Key
    ssh-keygen
    4-2. Paste Public key
    cat ~/.ssh/id_rsa.pub
    4-3. Registering Public key
    GITHUB profile > settings > SSH and GPG keys > New SSH Key

VCS

Version Control System
각 버전 별 변경 이력코멘트와 함께 저장, 이전 버전으로 복구 가능
Github, GitLab, Bitbucket 등 여러 원격 저장소 이용해 백업, 협업

Git & Github

Git: 소스 코드 기록을 관리하고 추적할 수 있는 버전 관리 시스템
Github: Git Repository를 관리할 수 있는 클라우드 기반 서비스,
개발자들의 SNS

0개의 댓글

관련 채용 정보