Section3. N311 환경설정

포동동·2022년 5월 30일
0

터미널

1) 기본 터미널 명령어

CD [이동할 경로]
커맨드창 위치이동

ls
폴더나 파일의 목록을 출력하는 명령어

ls -a
숨겨진 파일이나 디렉토리 모두 보여주는 명령어

ls -l
자세한 내용(퍼미션, 소유자, 그룹 등)을 출력하는 명령어

ls -al
l과 a 옵션을 같이 적용한다.(l, a 순서는 상관이 없다)

dir
현재 위치의 파일과 디렉토리(폴더) 목록 보기

help
명령어 도움말 보기 (명령 프롬프트 명령어를 모두 보여줍니다)

ipconfig
네트워크 설정상태 보기(/all 옵션을 붙여 상세한 설정 정보를 볼수 있습니다)

md [생성할 폴더 이름], mkdir [생성할 폴더 이름]
디렉토리(폴더) 생성

rd [삭제할 폴더 이름], rmdir [삭제할 폴더 이름]
디렉토리(폴더) 지우기 (/s 입력시 폴더안 파일이 있더라도 삭제가능, 휴지통으로 가지않고 완전삭제이므로 주의해야합니다)

path
환경변수 path 보기

cls
현재 명령 프롬프트 창 초기화 (이전 명령어 결과를 지웁니다)

[드라이브 문자열]:(ex. D: -> D드라이브로 변경)
드라이브 변경

del [삭제할 파일명]
파일 삭제(파일명을 [*.log] 이런식으로 입력하여 여러 파일 삭제 가능합니다)

copy [복사할 파일명] [복사할 위치 경로]xcopy [복사할 파일명] [복사할 위치 경로]
파일 복사 (xcopy는 숨김파일도 복사할수 있습니다.)

move [파일명] [이동할 위치 경로]
파일 이동 (이동한 파일이 이전경로에 남아있지 않습니다)

rename [현재 파일명] [변경후 파일명]
파일 또는 디렉토리(폴더)명 변경

date
현재 날짜 보기(현재 날짜를 보여준뒤 새로운 날짜를 입력하라고 하면 그냥 엔터치시면 됩니다)

tasklist
현재 실행중인 프로세스 모두 표시

exit
재 명령 프롬프트 창 종료

clear
화면 지우기

cat
파일의 내용을 터미널에 출력하는 명령어


파이썬 가상환경

1) 가상환경의 필요성

가상환경을 안 하면 패키지끼리 충돌이 날 수 있음. 왜냐하면, 패키지들은 버전을 구분하지 않기 때문에 지원하지 않는 기능이 있는 버전의 패키지를 쓰면 기능구현이 안 됨❌

패키지

  • standard library : 파이썬 설치하면 같이 되는 것(system packages).

  • site packages : pandas나 numpy 등 추가로 설치해야 하는 것. standard library가 아닌 것.

2) 가상환경 설정

anaconda 안에 포함된 여러 도구 중 conda를 이용해 관리.

#콘다 버전 확인
$ conda --version

#가상환경 리스트 보기
$ conda env list

#켜져있는 다른 가상환경 지우기
$ conda deactivate

#'practice'라는 가상환경 만들기
$ conda create --name 'practice' python=3.8
#가상환경 켜기
$ conda activate 'practice'
#가상환경 지우기
$ conda env remove --name 'practice'

그 외의 가상환경 도구

  • pipenv : 최근 많이 사용. 파이썬에서 공식적으로 추천하는 도구.
  • virtualenv : 예전에 좀 씀. 지금은 많이 안 씀.
  • conda : 패키지들을 하나씩 install 해야해서 불편함. 잘 안 씀. (근데 우리는 왜?🙄). 초보자가 쓰기 좋음.
  • Docker : 짱. 운영체제간의 차이가 문제가 없음. 운영체제의 이미지 전체가 포함되어 있다. 가상 환경은 python의 의존성을 캡슐화 하지만 도커는 컨테이너는 OS 전체를 캡슐화한다. (캡슐화?)

pip란, 파이썬으로 작성된 패키지 라이브러리를 관리해주는 시스템.

#깔려있는 패키지 확인
$ pip list

#업그레이드
$ pip install --upgrade pip

#패키지 설치
$ pip install 패키지 이름

#패키지 제거
$ pip uninstall 패키지 이름



깃 사용법

1) 깃을 활용한 관리

우선, VCS, CSVS, DVCS의 설명부터

  • VCS : 파일의 변화를 기록하고 특정 시점의 버전을 고대로 가져오는 시스템.
  • Local VCS : 로컬 컴퓨터 안에 간단한 데이터베이스를 사용해서 파일의 버전을 관리하는 시스템. (협업이 어려움)
  • CSVS : 중앙 집중식 버전 관리 시스템.(중앙서버 접근이 안 되면 모두 손 빨고 있어야 함)
  • DVCS : 분산형 버전 관리 시스템. 중앙서버가 있고 거기서 각자 작업공간에 가져와서 작업하고 올리고 내리고 하는 시스템.(굳👍)

2) 깃으로 작업하는 방법

Github에서 레포 만들거나 포크 한 걸 clone으로 복제해와서 로컬에서 작업 후 push

로컬에서 작업할 때 주로 사용하는 명령어

  • git status
  • git log
  • git commit
  • git add
  • git branch
  • git checkout

온라인으로 깃을 활용할 때 사용되는 명령어

  • git push
  • git pull
  • git fetch
  • git merge
  • git remote

git은 파일의 변경 내용을 스냅샷 찍듯 수정사항만 저장하는 스냅샷 방식을 취하고 있다.



깃헙

1) 깃헙 사용법

레포 생성 or 포크 : 디렉토리를 자기가 만들거나 가져오기



학습목표

🌱 Level 1 : Lecture Note 에 있는 주요 개념을 정의할 수 있으며 예제 코드를 이해하고 재현할 수 있다.

  • 터미널을 이용하여 CLI에 접근하고, 노트에 기재된 TOP 5 기본 명령어를 이용한 작업들을 수행할 수 있다.
  • 파이썬 가상환경이 왜 필요한지 설명할 수 있고, conda 예제를 재현할 수 있다.
  • Git과 Github를 분류하여 설명할 수 있으며, 깃을 이용하여 버전 관리를 할 수 있다.

🔝 Level 2 : 예제 코드를 해석하고 응용할 수 있으며 과제를 수행할 수 있다.

  • 워킹 디렉토리(작업 폴더)와 git, 가상환경을 분리해서 설명할 수 있다.
  • conda를 이용하여 의도하는 가상환경을 생성 및 삭제할 수 있고, 코드를 해석하여 설명할 수 있다.
  • requirements.txt 의 필요성을 설명할 수 있고, 제작할 수 있다.
  • 코드의 변경 사항을 Git을 이용하여 기록하고 원격 레포에 반영하여 PR을 생성할 수 있다.

🔥 Level 3 : Lecture Note 에 있는 주요 개념과 코드를 연결하여 설명할 수 있으며 도전 과제를 수행할 수 있다.

  • 기본 터미널 명령어를 찾아보지 않고 사용할 수 있다.
  • conda 외의 파이썬 가상환경을 이용하여 의도하는 개발환경을 구축할 수 있다.
  • Git branch를 이용할 수 있고, git pull 혹은 git merge 과정에서 발생하는 충돌을 해결할 수 있다.

🚀 Level 4 : Lecture Note 에 있는 개념 중 자신이 모르는 것을 구분해 낼 수 있으며 스스로 목표를 세우고 추가 학습을 진행할 수 있다.

  • CLI, 터미널, 쉘을 분리해서 설명할 수 있다.
  • 리눅스 역사와 철학을 설명할 수 있고, 우분투 리눅스 환경에서 파일 권한 설정을 할 수 있다.
  • Git의 기본요소를 구성하는 스냅샷을 설명할 수 있다.

Git Branch와 Conda 가상환경

profile
완료주의

0개의 댓글