본문 바로가기

Personal/DevOps

90DaysOfDevOps 35~38일차

Day 35 - The Big Picture Git - Version Control

버전 제어

- 버전 관리 장점은 프로젝트 이력을 추적할 수 있다는 것
- git log를 사용해 리포지토리의 커밋과 코멘트, 지금까지 있었던 일을 확인할 수 있다.
- 버전 제어는 백업이 아니다.

Branch & Merge

- branch를 사용하면 동일한 앱에 대해 두 개의 코드 스트림을 사용할 수가 있다.


- merge 기능을 사용하면 다른 브랜치의 버전에 포함된 것을 합칠 수 있다.

Git이란 무엇일까?

- git은 소스 코드 또는 모든 파일의 변경 사항을 추적하는 도구로, 오픈소스 분산 버전 관리 시스템이기도 하다.

- git init 명령어로 디렉토리를 초기화한다.

- git add . 으로 디렉토리의 모든 파일과 폴더를 스냅샷에 넣을 수 있습니다.

- git commit -m "My First Commit" 명령어로 커밋을 할 수 있습니다.
- git log로 커밋이 완료된 걸 확인이 가능하고, git status를 사용하면 커밋할 파일이 있는지 없는지 알 수 있습니다.

- git diff를 사용하면 두 커밋 사이의 변경 사항이 뭔지 알 수 있습니다.

 

- git checkout으로 새 파일을 잃지 않고 예전 버전으로 되돌릴 수 있습니다. 

- git switch 명령어로 다른 브랜치로 전환하거나 새 브랜치를 생성하고 그곳으로 전환하는 등의 작업을 수행할 수 있다.

Day 36 - Installing & Configuring Git

Git 설치

- 설치된 git 버전을 확인해 보니 2.41.0이었습니다.

- 최신 git 버전을 확인했더니 2.47.0인 것을 알 수 있었습니다.

Git 구성하기

- 처음 git을 사용할 때는 Name, Email, 기본 에디터, Line Ending을 정의해야 한다.
- 이 설정들은 System(모든 사용자), Global(현재 사용자의 모든 리포지토리), Local(현재 리포지토리)의 3가지 수준에서 수행할 수 있다.
- git config --global user.name "Michael Cade" git config --global user.email Michael.Cade@90DaysOfDevOPs.com"으로 하면 이름과 메일을 설정할 수 있다.

- git config --global -e로 모든 git  구성을 확인할 수 있다.

클라이언트-서버 버전 제어

- git이 등장하기 전에는 클라이언트-서버가 버전 관리를 위한 유일한 방법이었다.
- 개발자가 서버에서 소스 코드와 실제 파일을 다운로드하고, 자신의 작업과 충돌하는 부분을 모두 처리한 뒤 커밋해야 한다.

분산 버전 제어

- Git의 주요 이점은 빠름, 스마트, 유연함, 안전 및 보안이다.
- 각 개발자는 Git에서 커밋 히스토리, 모든 branch 등을 의미하는 소스 리포지토리를 다운로드한다.

Day 37 - Gitting to know Git

Git 공식 문서

- 공식 git 사이트와 문서에서 git에서 사용 가능한 모든 명령어에 대한 확실한 정보와 다양한 리소스를 찾을 수 있다. 

- git add -h로 사용 가능한 옵션에 대한 요약을 볼 수 있다.

 

Day 38 - Staging & Changing

스테이징 파일

- 아직 커밋하기 전 git add해서 파일을 스테이징 영역에 추가할 수 있다.

파일 제거

- 디렉토리에서 파일을 제거했을 때 git에서는 아직 인식하므로 리포지토리에서도 파일을 제거해야 한다.

- git rm oldcode.ps1 명령어로 oldcode.ps1 파일을 제거할 수 있다.

파일 이름 바꾸기 또는 이동

- git mv를 통해 변경이 가능하다.

파일 무시하기

- .gitignore 파일에 폴더나 파일을 추가하여 파일을 무시할 수 있다. 

간략한 status

- git status보다 더 간단한 상태를 확인할 수 있는 명령어이다.

'Personal > DevOps' 카테고리의 다른 글

90DaysOfDevOps 39~41일차  (1) 2024.11.05
90DaysOfDevOps 23~24일차  (0) 2024.10.04
90DaysOfDevOps 21~22일차  (0) 2024.10.04
90DaysOfDevOps 20일차  (2) 2024.10.01
90DaysOfDevOps 18~19일차  (6) 2024.09.30