연랩

[Microsoft AI School 6기] 12/18(3일차) 정리 - Git, GitHub 설치, 연결, 사용 본문

MS AI school 6기

[Microsoft AI School 6기] 12/18(3일차) 정리 - Git, GitHub 설치, 연결, 사용

parkjiyon7 2024. 12. 18. 18:12

파이썬 프로그래밍 개발 환경

 

Python을 이용하여 데이터 분석을 하는 경우,

1) Visual Studio Code와 같은 IDE 사용

2) Jupyter Notebook 과 같은 computational notebook을 사용

 

IDE(Integrated Development Environment)

:통합 개발 환경

- 코딩을 할 때 가장 많이 사용되는 도구

- 코드를 작성, 편집하고 실행 및 디버깅하는 환경이 통합됨

ex) MS Visual Studio/Visual Studio Code, IntelliJ, Xcode 등

 

Computational Notebook

- 데이터를 탐색하면서 바로 결과를 확인할 수 있음

ex) Jupyter Notebook

 

Visual Studio Code

MS Visual Studio 보다 가벼움

 

Jupyter Notebook

->Markdown 활용하여 필기나 기타 이미지 기재 가능

 

 

Python 개발 환경 비교(Notebook 환경)

 

Python 개발 환경 비교

 

 

Visual Studio VS Visual Studio Code

 

Visual Studio

 

Visual Studio

 

- 기본적으로 Visual Studio가 무거움

- .NET, C++등 다양한 언어를 지원

 

Visual Studio Code

 

Visual Studio Code

 

- extension을 활용하면 IDE로 사용 가능

- python 개발용 IDE로 사용하기에 충분

 

 

Git, GutHub

 

버전관리의 필요성

 

프로그램 소스 코드가 문서 작업을 하다 보면, 작업 내역을 추적, 관리하고 동료들과 협업을 할 필요가 있는데, 이를 수작업하지 않고 도구를 쓰게 되면 작업 효율성을 매우 높일 수 있다.

- 버전 관리, 형상 관리 도구

 

 

버전 관리의 필요성

 

 

Git

 

- 분산형 소프트웨어 형상 관리 도구

- 현재 Git이 업계를 대표하는 도구가 됨

-> 로컬에서 동작, 버전 관리 툴

 

 

GitHub

 

- 2018년 마이크로소프트에 인수

- 단순 코드 호스팅 플랫폼이 아닌 개발 플랫폼으로 확장 중

- 클라우드 개발 환경이라 언제 어디서나 개발 가능

- Codespaces 서비스를 이용하여 Python 개발이 가능하며 또한 Web 지언으로 언제 어디서나 개발이 가능

-> 클라우드 공간의 저장소임(repository), 내가 개발하는 코드를 공유하거나 저장하는 기능

 

 

GitHub Codespaces에서 Python 개발하기

 

Workflow

 

 

GitHub에서 작업하기

 

1) repository 생성후

2) index.html 파일 생성

그 후 Settings->Pages에 들어가면

 

GitHub Settings-> Pages

 

여기에서 생성된 링크로 html 파일을 웹에서 확인할 수 있다

 

- GitHub에는 VS code editor가 내장되어 있음

- 접속 방법

  repository main 페이지에서

  .(점)

  을 치면 VS code editor 화면으로 감

  혹시 안된다면 상단의 웹페이지 주소에 github.dev으로 바꿔주면 

 

VS code editor

 

VS code editor 로 넘어간다

 

- VS code editor에서 HTML 작성

여기서 !하고 enter를 누르면 tag들이 나온다

 

VS code editor !

 

h$()*6 하면 h1부터 h6까지 사이즈를 바꿔서 나온다

여기서 commit 하고 싶으면 좌측의 

VS code

이 아이콘을 클릭한다

 

VS code editor commit

 

탭 안에 창 메세지에서 commit 메세지를 지고 체크 표시를 누르면 commit 이 된다.

이후 repository에서 확인하여 보면 코드가 수정되어 있다는 사실을 알 수 있다.

 

또한 repository에서

Commit History

 

우측 상단에 Commits를 클릭하면 commit history를 볼 수 있다.

 

 

Codespace

우측 상단에 +

우측 상단에 +를 클릭하면 codespace를 생성할 수 있다

 

Create Codespace

 

그러면 위와 같은 화면이 뜬다

여기서 Region과 리소스를 설정할 수 있다

4-core의 경우, 할당된 무료 리소스를 빠르게 소진할 수 있으므로 2-core로 사용하기로 했다

 

그 후, Create codespace를 누르면 아래와 같은 화면이 나온다

 

VS code editor

 

그러면 VS code editor가 뜨는 데, codespace는 VS code editor를 기반으로 하는 클라우드 서비스이다

 

좌측 탭

 

마우스 오른쪽이나 사진의 우측 상단에 가장 왼쪽 아이콘을 누르면 새 파일을 생성할 수 있다

 

우리는 python을 사용할 것이기 때문에 파일명을 

first.py로 지정하면

우측하단에 python 설치 메세지가 뜨는 데, 설치해주면 된다.

 

python 파일

 

후에 아래 터미널에 

python first.py(=파일명)

이라 작성하면 실행된다는 사실을 알 수 있다. 혹은, 우측 상단의 run(삼각형) 버튼을 누르면 된다

 

.py는 스크립트

.ipynb는 jupyter notebook 형식을 활용하는 것이다

 

ipynb를 사용하고 싶으면 좌측에 확장에서 jupyter를 설치하여야 한다

이후, 다시 파일로 돌아와서 

우측에

 

python 커널 변경

 

이 버튼을 누르면 

 

커널 선택

 

커널을 선택할 수 있는 버튼이 나온다. 여기서 다른 커널 선택 > Python 환경에 들어가서 Python 3.12.1을 선택하였다.

 

실행을 하면 아래와 같이 나온다

 

Python-Jupyter Notebook

 

코드 셀Markdown 셀로 나뉘는 데

 

코드 셀은 위의 사진의 print('Hello Python')이 써져 있듯이 코드를 작성하는 셀이며

Markdown에는 설명이 들어간다

 

shift + enter : 밑에 셀이 하나 더 추가되면서 실행

Ctrl + enter : 해당 셀을 실행하기만 함

 

Error Message

 

Jupyter Notebook에서는 에러 메세지 또한 저장할 수 있다

 

전체 실행 등의 옵션은

상단 메뉴

 

상단에 있는 메뉴를 참조하면 된다

 

 

Template으로 codespace 이용

 

Codespaces

 

아까와 같이 new codespaces>하고 좌측상단에 위와 같은 아이콘을 누르면 

 

codespaces home

 

여기에서 templates를 활용하여 만들 수 있다

Jupyter Notebook을 사용해보도록 하겠다

 

Jupyter Notebook Use this template을 클릭하면 이러한 화면이 뜬다

 

codespace-Jupyter Notebook template

 

- template은 default가 4GB로 되어 있으며 변경이 안된다

 

Template-machine types

 

이것을 변경하기 위해서는 codespaces에 들어간 후 

devcontainer.json 파일을 클릭하면 core를 변경할 수 있다

 

CPU 2 core 변경

 

그러나 만든 후에 변경하면 문제가 생길 수 있기 때문에 처음부터 2로 시작하는 것이 좋다

(추후에 제공된 코드 참조)

 

codespaces 목록은 좌측에서 확인할 수 있다

 

Codespages목록

 

(Jupyter Notebook은 용량이 너무 커서 삭제...)

 

repository 삭제는 settings>general에서 할 수 있다

GitHub은 웹서비스 Git는 로컬에 설치하는 버전 관리를 해주는 소프트웨어

 

 

Git 사용법 기본

 

과거 형상관리 도구와 Git의 차이

 

과거의 형상 관리 도구- 서버에 모든 변경 내용을 관리

Git- 분산형에서는 변경 내용이 각각의 로컬에서도 관리

 

Git으로 형상관리를 하는 경우 진행되는 기본적인 작업 흐름은 다음과 같다

 

Git 형상관리 작업 흐름

 

핵심은 add->commit->push/pull

 

 

Git의 저장 영역 구분

 

Git 사용시 working directory, staging area, local repository, remote repository의 4군데 영역에서 파일이 이동하면서 관리

 

Git의 저장 영역

 

Remote Repository 생성(서버의 저장소)

-> GitHub에서 생성

 

 

Git 다운로드 및 연결

 

- 아래의 링크에서 Git을 다운로드 해 로컬에 설치해 주면 된다

(window 기준)

https://git-scm.com/downloads/win

 

- Git을 통해 로컬과 서버의 작업을 연결

 

연결하고 싶은 폴더에 들어가서 마우스 오른쪽 버튼 클릭>추가옵션 표시에 들어가면 아래와 같이 뜬다

 

추가옵션 표시

 

여기에서 Open Git Bash here를 누르면 아래와 같은 창이 뜬다

 

Git Bash

 

자 이제 Git Hub로 들어가서 repository로 들어가서 Code버튼을 누르면 아래와 같이 뜬다

 

Repository>Code

 

여기서 HTTPS 링크를 copy한 다음

 

git clone

 

clone 명령어를 실행해 보면

 

Local folder 확인

 

해당 위치에 README 파일이 생성 됨을 알 수 있다

이를 통해 연결이 되었음을 알 수 있다.

 

이제 push를 위한 환경 설정을 하도록 하겠다

git config

 

GitHub user name이랑 email을 입력한다

 

local에서 만든 newfile.txt를 옮겨보도록 하자

 

1)Staging은

git add 명령어로 수행한다

 

git add .

 

2) Local repository

.git 파일에 기재

git commit

git commit "새로운 파일 기재" -m

 

git commit

 

-m 옵션은 메세지이다

 

3) Remote repository

git push

 

git push

 

- git push 뒤에는 .을 찍지 않는다

- 처음으로 push를 하게 되면 로그인을 해야하는 경우가 종종 있다

 

git pull을 통해 로컬 저장소와 서버 저장소가 다른 지 확인 후, 없으면 로컬에 넣어줌

(Clone 명령어는 최초에 한번만 사용)

 

 

 

Python install

 

파이썬 홈페이지에 들어가면 다운로드 받을 수 있다

https://www.python.org/downloads/

 

Python.org

 

설정 시 기본은 default으로 하되, 밑의 설정들만 추가하였다

 

Install Python

 

Install Python

 

설치 후, IDLE을 실행하면 다음과 같다

 

Python IDLE

 

 

Visual Studio Code 설치

 

https://code.visualstudio.com/

 

해당 웹사이트에 들어가서 VS code를 설치할 수 있다

 

설치 후 첫화면은 다음과 같다

Visual Studio Code

 

그 후, Extension에 들어가서 Python가 Jupyter을 설치 한다

 

Python extension

 

Jupyter extension

 

그 다음, Open folder를 통해 앞에서 생성했던 git과 연결했던 파일을 열면, 해당 폴더의 파일을 확인할 수 있다

Open Folder
Open termial

 

상단의 Terminal로 터미널을 열어 파일을 실행해 볼 수도 있다

ctrl+Shift+` 단축키로도 터미널을 열 수 있다

 

test.ipynb를 작성해보면 다음과 같다

 

test.ipynb

 

작성된 코드를 add, commit, push를 하고 싶으면

 

+를 누르면 staging

 

여기에서 + 를 클릭하면 staging이 된다(add)

 

commit

 

그 후, commit을 누르고

Sync matching

 

sync를 맞추면(push)

한 가지 유의점을 말하자면, commit message를 작성하지 않으면 무한 로딩하니 유의하기를 바란다

 

GitHub에 파일이 업데이트 되었음을 알 수 있다

 

GitHub

 

추가로 옆에 점3개를 누르면 

Cell Number Option

 

cell 숫자를 부과할 수 있다

 

 

오늘의 간단한 후기

 

사실 Git 연결이나 VS code, Python 설치를 처음해보는 것이 아닌데 그 사이에 업데이트 되어서 당황했다. 혼자 작업하면 상관 없는 일도 사실 강의에 오류 없게 맞춰야 하는 일이니 세세히 신경써야 했다. 그래도 GitHub 툴을 직접 익히는 것 이외에 배워보는 것은 처음이었는데 차분히 잘 배울 수 있어서 좋았다. 모르던 기능들 또한 익힐 수 있는 좋은 기회였던 것 같다

 

 

 

출처

[1] Flaticon, "Free icons and stickers," Flaticon, 2024. Available: https://www.flaticon.com/. Accessed: Dec. 16, 2024.

[2] GitHub, "GitHub: Where the world builds software," GitHub, 2024. Available: https://github.com/. Accessed: Dec. 16, 2024.

[3] Python Software Foundation, "Python: Programming language," Python.org, 2024. Available: https://www.python.org/. Accessed: Dec. 16, 2024.

[4] Git, "Git: Distributed version control system," Git-SCM, 2024. Available: https://git-scm.com/. Accessed: Dec. 16, 2024.

 

-If any problem for references, or any questions please contact me by comments.

-This content is only for recording my studies and personal profiles

 

일부 출처는 사진 내에 표기되어 있습니다

본문의 내용은 학습과 개인 profile 이외의 다른 목적이 없습니다

출처 관련 문제 있을 시 말씀 부탁드립니다

상업적인 용도로 사용하는 것을 금합니다

본문의 내용을 Elixirr 강의자료 내용(인선미 강사님)을 기반으로 제작되었습니다

본문의 내용은 MS AI School 6기의 강의 자료 및 수업 내용을 담고 있습니다.

반응형