코드스테이츠 AI 부트캠프/Section 3

AIB_311_복습정리 : 환경 세팅하기

yourhm 2021. 12. 27. 09:05

 STEP 1  Git Bash

CLI 기본 명령어

pwd 현재 디렉토리 보여주기
cd ai-bootcamp/Section3 change directory(원하는 디렉토리로 이동)
cd .. 한 단계 상위 디렉토리로 이동
cd / 최상위 디렉토리로 이동
cd ~ 홈 디렉토리로 이동
mkdir ai-practice 현재 디렉토리 위치에서 새로운 디렉토리 생성
ls 현재 디렉토리 위치한 파일들 확인.
ls -l 현재 디렉토리 위치한 파일들 상세정보 확인.
ls -a 현재 디렉토리 위치한 숨겨진 파일정보 포함 확인.
ls -al -l, -a 두개 다 합친 기능.

 

Github Repository 와 로컬 연결하기

방법 1. 깃헙 레포 복제

$ git clone https://github.com/{유저이름}/ds-sa-simple-git-flow.git
$ cd ds-sa-simple-git-flow

방법 2. 로컬에서 기존 작업하고 있던 깃과 깃헙의 레포와 연결

$ cd ds-sa-simple-git-flow
$ git remote add origin https://github.com/{유저이름}/ds-sa-simple-git-flow.git

 

Code Editor 연결해서 작업 시작.

$ code ./

 

 

 

 STEP 2  VS code

git remote -v (현재 연결되어 있는 원격 레파지토리를 확인)

origin  https://github.com/limhm4907/ds-sa-simple-git-flow.git (fetch)
origin  https://github.com/limhm4907/ds-sa-simple-git-flow.git (push)

 

$ conda env remove --name s1n1

conda remove --name s1n1 --all

 

$ conda deactivate

$ conda env list (이거 결과를 txt 로 저장하려면 오른쪽 그대로 붙여넣기: > result.txt)

$ conda list (가상환경에 설치되어 있는 라이브러리 확인)

conda create --name s1n1 python=3.8

conda activate s1n1

 

$ cd ai-bootcamp/Section3/ds-sa-simple-git-flow

 

$ pip install -r requirements.txt

$ pip freeze > requirements.txt
가상환경을 쓰는 가장 큰 이유라고도 할 수 있는 라이브러리(패키지) 관리이다. 가상환경에 설치된 패키지들은 목록으로 저장해두었다가, 언제 어디서든 다시 설치하여 동일한 환경으로 만들 수 있다.
가상환경을 활성화 시킨 상태에서 위 명령어를 통해 패키지의 목록과 버전 정보들을 requirements.txt 파일에 저장한다. 특히 git 등으로 버전 관리를 할때 이 requirements.txt파일만 관리를 해주면 된다. git의 오픈소스나 프로젝트들을 염탐하다보면 이 파일을 종종 볼 수 있다.

 

pip uninstall -r requirements.txt (one by one) : requirements.txt 목록에 해당하는 패키지들을 삭제한다.

$ pip uninstall -r requirements.txt -y (at once) : 한번에 삭제

 

python -m pytest --submit

python -m pytest --score

 

--------------------

 

브랜치 리스트 확인 방법

$ git branch : 로컬 저장소 branch 리스트를 보여줌 (*표시 붙어있는게 현재 checkout해서 작업중인 브랜치임.)

git branch -r : 원격 저장소의 branch 리스트 확인

git branch -a : 로컬, 원격 모든 저장소의 branch 리스트 확인

$ git branch -v : 커밋 메세지도 함께 보여준다.

git branch --merged : merge된 branch 리스트만 확인

 

 

원격 저장소의 브랜치 가져오기

$ git checkout -t origin/git-merge

: 로컬의 동일한 이름의 branch를 생성하면서 해당 branch로 checkout을 한다.

$ git checkout -b chance origin/git-merge  ($ git checkout -b [변경할 branch 이름] [원격 저장소의 branch 이름])

: branch 이름을 chance 라고 변경하여 가져오기

 

브랜치 생성, 브랜치 이동

$ git branch aaa : branch 생성 (브랜치명 aaa)

$ git checkout aaa : branch 이동 (aaa로)
Switched to branch 'aaa'

 

브랜치 병합

(aaa에 chance를 병합한다면, aaa으로 checkout된 상태에서 git merge 실행)

 

ㄴ오류 발생 (1)

$ git merge chance
fatal: refusing to merge unrelated histories

 

ㄴ 오류 발생 (2) '--allow-unrelated-histories' 문구와 함께 merge 실행했더니 또 오류 발생

git merge --allow-unrelated-histories git-merge

Auto-merging .report.json
CONFLICT (add/add): Merge conflict in .report.json
Auto-merging src/Part_1.py
CONFLICT (add/add): Merge conflict in src/Part_1.py
Auto-merging src/Part_2.py
CONFLICT (add/add): Merge conflict in src/Part_2.py
Auto-merging src/Part_3.py
CONFLICT (add/add): Merge conflict in src/Part_3.py
Automatic merge failed; fix conflicts and then commit the result.

 

ㄴ 해당 파일들의 수정사항 충돌된 부분 직접 보고 결정해준 뒤 add -> commit 진행

 

 

--------------------

 

git add .

git status

On branch main
Your branch is up to date with 'origin/main'.

 

Changes to be committed:
  (use "git restore --staged <file>..." to unstage)
        modified:   .report.json
        new file:   result.txt
        modified:   src/Part_1.py
        modified:   src/Part_2.py
        modified:   src/Part_3.py

git commit -m "Part3 commit"

git push origin main

$ git push origin git-branch (새로 생성한 브랜치 푸시할때)

 

$ git remote remove origin (연결된 기존 리포 연결해제)

 

 

[참고자료]

https://gooopy.tistory.com/25

 

Python 필요한 모듈들을 설치해보자

모듈(Module)이란?  여러분이 파이썬을 본격적으로 활용하다보면 어느 순간부터인가 모듈, 모듈화한다 등의 말을 듣게 될 것이다. 모듈은 함수(Function), 변수(Variable), 클래스(Class)를 이쁘게 잘 모

gooopy.tistory.com