TIL

 

Today I Learned..

git 수업 1일차

배경적인 이야기

 

코딩 작업 백업 예시

 

1차 깃 2차 클라우드 3차 물리적 백업

형상관리 툴 git

 

리누스 토발즈가 기존 형상관리 툴에 화가 나서 일주일만에 만들었다. 이렇게 만든 형상관리 툴이 업계 1위를 차지할 정도면 거의 신의 위치.

Agenda

 

  • Prerequisites - shell, vim commands
  • git basic - clone, add, commit, push
  • pre-commit
  • git advanced - branch
  • git branching strategy - git flow, github flow, gitlab flow
  • Co-work with git, github

Goal

 

  • 코드 관리를 위한 git의 정확한 사용법을 이해한다.
  • git의 저장소 개념을 이해하고, 원격 저장소 소비스의 차이를 인식한다.
  • git을 사용하면서 발생하는 다양한 상황을 해결하 수 있다.
  • commit의 보편적인 작성법을 이해하고 이를 활용하여 commit을 작성할 수 있다.
  • pre-commit을 활용하여 commit 작성 전 변경사항을 확인할 수 있다.
  • git의 branch model을 활용해 능숙하게 코드를 관리할 수 있다.
  • git의 다양한 branch 전략을 이해하고 널리 사용되는 github flow 전략을 활용하여 프로젝트를 수행할 수 있다.
  • github projects와 issue로 프로젝트 이슈를 관리할 수 있다.
  • git으로 타인과 협업하며, 다른 프로젝트에 기여할 수 있다.

Prerequisites - shell, vim commands

 

Markdown에 대한 내용

 

Markdown Subject h1~h6

 

문단형 텍스트는 그냥 적으시면 됩니다. 여기가 2문단 인것 같지만 엔터로 구분 안하시면 1문단으로 표현됩니다.

3문단 인것 같은 2문단

Content

 

  • What is vim?
  • vim mode
  • Unordered list

vim mode

 

  1. Normal mode: Press 'esc' on any mode
  2. Insert mode: Press 'i' on Normal mode
  3. Visual mode: Press 'v' on Normal mode
  4. Visual line mode: Press 'v + shift' on Normal mode
  5. Visual block mode: Press 'ctrl+v' on Normal mode
  6. Command-line mode: Press ':' on Normalmode
  7. Ordered list

Code block

 

You can use backquote to emphasize some words.

Execute $ pip install -r requirements.txt to install requirements.

def hello(name:str):

    return f'Hello, {name}'

 

일반적인 스니펫

Image

 

![](path/image url/imagename.jpg) Go to google 10 - What is vim?

  • vim mode
  • Unordered list

vim mode

 

  1. Normal mode: Press 'esc' on any mode
  2. Insert mode: Press 'i' on Normal mode
  3. Visual mode: Press 'v' on Normal mode
  4. Visual line mode: Press 'v + shift' on Normal mode
  5. Visual block mode: Press 'ctrl+v' on Normal mode
  6. Command-line mode: Press ':' on Normalmode
  7. Ordered list

Code block

 

You can use backquote to emphasize some words.

Execute $ pip install -r requirements.txt to install requirements.

def hello(name:str):

    return f'Hello, {name}'

 

일반적인 스니펫

Image

 

![](path/image url/imagename.jpg) Go to google

git의 저장소 개념을 이해하고, 원격 저장소 소비스의 차이를 인식한다.

 

여기서부터는 작성 진행..

 

git을 사용하면서 발생하는 다양한 상황을 해결하 수 있다.

 

commit의 보편적인 작성법을 이해하고 이를 활용하여 commit을 작성할 수 있다.

 

pre-commit을 활용하여 commit 작성 전 변경사항을 확인할 수 있다.

 

git의 branch model을 활용해 능숙하게 코드를 관리할 수 있다.

 

git의 다양한 branch 전략을 이해하고 널리 사용되는 github flow 전략을 활용하여 프로젝트를 수행할 수 있다.

 

github projects와 issue로 프로젝트 이슈를 관리할 수 있다.

 

git으로 타인과 협업하며, 다른 프로젝트에 기여할 수 있다.

 

git github 수업 소감

 

2 동안 git, github 수업 짧은 기간이었지만 git 대해 많은 것을 해보고 경험해본 같습니다. 지금까지 git add, commit, push 대충 해봤습니다만, 깊이 있게 알게 된것 같습니다. key 오류로 집에서 사이드 프로젝트로 push 했을 몇시간 씨름했던 기억납니다. 이런 부분에 대해서도 알게 되었고요, 개발팀이나 개발자들은 형상관리라는 표현을 쓰더라고요. 자기가 작업했던 코드가 이력이 남는 다는것이 신기합니다. 그리고 2018년쯤 본인에게 개발자가 HTML 설명할 Markup이라는 표현을 썼었어요. "Markup 어쩌고.." Markdown 아니었고요 Hyper Text Markup Language 포함하는 단어였는데 있어보이더라고요. git 대한 목마름을 채워주는 좋은 수업이었습니다. 최우영 강사님 감사합니다. 👍

https://github.com/kimsijin33/TIL

 

GitHub - kimsijin33/TIL: Today I Learned..

Today I Learned.. Contribute to kimsijin33/TIL development by creating an account on GitHub.

github.com

 

'IT' 카테고리의 다른 글

250726 TIL  (0) 2025.07.27
아파트 실거래가 예측 머신러닝 경진대회 정리  (0) 2025.07.25
TIL Today I Learns 250720  (0) 2025.07.21
Statistics 강의  (0) 2025.06.14
Graph Convolutional Network 모델을 이용한 화재 상황인식  (0) 2023.08.23

1일 차

TIL Today I Learned..

[git 수업 1일차]

배경적인 이야기

코딩 작업 백업 예시

 

1차 깃 2차 클라우드 3차 물리적 백업

형상관리 툴 git

 

리누스 토발즈가 기존 형상관리 툴에 화가 나서 일주일만에 만들었다. 이렇게 만든 형상관리 툴이 업계 1위를 차지할 정도면 거의 신의 위치.

Agenda

 

  • Prerequisites - shell, vim commands
  • git basic - clone, add, commit, push
  • pre-commit
  • git advanced - branch
  • git branching strategy - git flow, github flow, gitlab flow
  • Co-work with git, github

Goal

 

  • 코드 관리를 위한 git의 정확한 사용법을 이해한다.
  • git의 저장소 개념을 이해하고, 원격 저장소 소비스의 차이를 인식한다.
  • git을 사용하면서 발생하는 다양한 상황을 해결하 수 있다.
  • commit의 보편적인 작성법을 이해하고 이를 활용하여 commit을 작성할 수 있다.
  • pre-commit을 활용하여 commit 작성 전 변경사항을 확인할 수 있다.
  • git의 branch model을 활용해 능숙하게 코드를 관리할 수 있다.
  • git의 다양한 branch 전략을 이해하고 널리 사용되는 github flow 전략을 활용하여 프로젝트를 수행할 수 있다.
  • github projects와 issue로 프로젝트 이슈를 관리할 수 있다.
  • git으로 타인과 협업하며, 다른 프로젝트에 기여할 수 있다.

Prerequisites - shell, vim commands

 

Markdown에 대한 내용

 

Markdown Subject h1~h6

 

문단형 텍스트는 그냥 적으시면 됩니다. 여기가 2문단 인것 같지만 엔터로 구분 안하시면 1문단으로 표현됩니다.

3문단 인것 같은 2문단

Content

 

  • What is vim?
  • vim mode
  • Unordered list

vim mode

 

  1. Normal mode: Press 'esc' on any mode
  2. Insert mode: Press 'i' on Normal mode
  3. Visual mode: Press 'v' on Normal mode
  4. Visual line mode: Press 'v + shift' on Normal mode
  5. Visual block mode: Press 'ctrl+v' on Normal mode
  6. Command-line mode: Press ':' on Normalmode
  7. Ordered list

Code block

 

You can use backquote to emphasize some words.

Execute $ pip install -r requirements.txt to install requirements.

def hello(name:str):

    return f'Hello, {name}'

 

일반적인 스니펫

Image

 

![](path/image url/imagename.jpg) Go to google 10 - What is vim?

  • vim mode
  • Unordered list

vim mode

 

  1. Normal mode: Press 'esc' on any mode
  2. Insert mode: Press 'i' on Normal mode
  3. Visual mode: Press 'v' on Normal mode
  4. Visual line mode: Press 'v + shift' on Normal mode
  5. Visual block mode: Press 'ctrl+v' on Normal mode
  6. Command-line mode: Press ':' on Normalmode
  7. Ordered list

Code block

 

You can use backquote to emphasize some words.

Execute $ pip install -r requirements.txt to install requirements.

def hello(name:str):

    return f'Hello, {name}'

 

일반적인 스니펫

Image

 

![](path/image url/imagename.jpg) Go to google

git의 저장소 개념을 이해하고, 원격 저장소 소비스의 차이를 인식한다.

 

여기서부터는 작성 진행..

 

git을 사용하면서 발생하는 다양한 상황을 해결하 수 있다.

 

commit의 보편적인 작성법을 이해하고 이를 활용하여 commit을 작성할 수 있다.

 

pre-commit을 활용하여 commit 작성 전 변경사항을 확인할 수 있다.

 

git의 branch model을 활용해 능숙하게 코드를 관리할 수 있다.

 

git의 다양한 branch 전략을 이해하고 널리 사용되는 github flow 전략을 활용하여 프로젝트를 수행할 수 있다.

 

github projects와 issue로 프로젝트 이슈를 관리할 수 있다.

 

git으로 타인과 협업하며, 다른 프로젝트에 기여할 있다.

git github 수업 소감

2 동안 git, github 수업 짧은 기간이었지만 git 대해 많은 것을 해보고 경험해본 같습니다. 지금까지 git add, commit, push 대충 해봤습니다만, 깊이 있게 알게 된것 같습니다. key 오류로 집에서 사이드 프로젝트로 push 했을 몇시간 씨름했던 기억납니다. 이런 부분에 대해서도 알게 되었고요, 개발팀이나 개발자들은 형상관리라는 표현을 쓰더라고요. 자기가 작업했던 코드가 이력이 남는 다는것이 신기합니다. 그리고 2018년쯤 본인에게 개발자가 HTML 설명할 Markup이라는 표현을 썼었어요. "Markup 어쩌고.." Markdown 아니었고요 Hyper Text Markup Language 포함하는 단어였는데 있어보이더라고요. git 대한 목마름을 채워주는 좋은 수업이었습니다. 최우영 강사님 감사합니다. 👍

https://github.com/kimsijin33/TIL

 

GitHub - kimsijin33/TIL: Today I Learned..

Today I Learned.. Contribute to kimsijin33/TIL development by creating an account on GitHub.

github.com

 

[2일차 마지막 git collab 실습] 

# 100 Prisoners Problem

## collaborate practice 🙌

 

## [프로그램 실행 방법]

 

## 실행 명령어 :thumbsup:

python fb3.py

 

## 실행 결과 :thumbsup:

Simulation count: 100000

 

Random play wins:  0.0% of simulations

Optimal play wins: 31.3% of simulations

 

 

# 깃 협업 메모

 

## 시작 방법 :bulb:

1. 팀장은 처음 깃 홈페이지 상단에서 - New organization - Free 로 만듦

2. 팀원들 메일 input box 에 넣고 클릭

3. Git clone 팀레포 주소

4. 해당 클론에서 .gitignore 생성 파일 touch 로 만들고 값 입력

5. Git add .gitignore 

6. Git add 작업파일.py

7. Git commit 

8. Git push origin main

9. 이제 팀원들은 각자 팀레포를 포크해서 포크 레포를 로컬환경에 git clone 

10. 팀원들은 git clone 한 로컬 환경에서 작업 후 포크 레포에 git add - commit - push 

11. 팀장은 팀 레포 pull requests 에 올라온  팀원들의 소스파일들을 검토하고 문제 없으면 Conversion 탭에서 Merge 함

 

## 궁금한 점 & 작업 메모 :rocket:

1. 팀 레포지토리에서 issue 올라온 글  pull request - Conversation 탭 에서 resolve #1 -> 이렇게 issue 번호로  comment 하면 conversation 에서 머지 했을 때 해당 issue #1 번이 자동 close

2. Mileston 만들면 해당 pull requests 올라 온 거에 할당해야 함 

->  pull requests 오른쪽 중간에 milestone 설정

3. 세모 느낌 표를 완료하면 초록색 체크표시 -> 이건 어디서 어떻게? 

4. conflict 테스트를 해봤으면 함

-> 팀원들이 같은 소스파일을 수정할 때 발생할 것으로 보임

 

## 팀원 각자의 포크 레포에 팀 레포 파일들을 가져와서 동기화하는 방법  :computer:

git remote add upstream https://github.com/first-team1111/fbfbfb.git

git remote -v

git fetch upstream main

git merge FETCH_HEAD

 

## Reference :bulb:

## gitignore 사이트 주소

https://www.toptal.com/developers/gitignore/

 

gitignore.io

Create useful .gitignore files for your project

www.toptal.com

https://github.com/first-team1111/fbfbfb

 

GitHub - first-team1111/fbfbfb: collaborate practice

collaborate practice. Contribute to first-team1111/fbfbfb development by creating an account on GitHub.

github.com

 

+ Recent posts