kimchiuk / TIL

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

GIT(분산형 저장소)

git 분산 버전 관리 프로그램

버전 관리 프로그램

  • 파일 히스토리를 저장하는 도구
  • 코드의 히스토리를 관리하는 도구
  • 개발되어온 과정 파악가능
  • 이전 버전과 변경사항 비교 및 분석
  • 원본 파일에서 수정 파일을 기록할 수 있다.
  • 스냅샷 저장방식

분산

  • 중앙 집중식 버전관리
    • 원격 서버에서 최신버전만 가져올 수 있다.
  • 분산 버전 관리
    • 복제한 로컬저장소에서도 별도의 다른 복제본을 만들어서 다른 피시에 저장할 수 있다.
    • 히스토리에 대한 내용들도 같이 백업이 되어 저장되기 떄문에 용량이 부담되며, 병합을 했을 때 충돌을 하는 경우가 발생

  1. 분산버전 관리 : 과거 특정 시점으로 되돌아가거나, 한번에 여러 버전으로 개발자들이 동시에 작업이 가능하다.
  2. 성능 : bitkeeper 라이센스, 이전에 있었던 모든 버전 관리 프로그램보다 성능 월등이 빨랐다. 대용량 프로젝트를 효율적으로 관리할 수 있다.
  3. 커뮤니티 : 오픈소스 소프트웨어, 커뮤니티 기반으로 개발이 누구나 참여 가능, 활발했다.
  4. 공개 저장소 : 사용자들이 공개 저장소(github)를 이용해서 프로젝트를 공유, 프로젝트 관리/ 팀 개발 용이

GUI 와 CLI

  • GUI : 그래픽을 통해 사용자와 컴퓨터가 상호 작용하는 방식
  • CLI : 명령어를 통해 사용자와 컴퓨터가 상호 작용하는 방식

why CLI

  • gui는 CLI에 비해 사용하기 쉽지만 단계가 많고 컴퓨터의 성능을 더 많이 소모
  • 수많은 서버/개발 시스템이 CLI를 통한 조작환경을 제공

절대경로 
- 루트 디렉토리부터 목적 지점까지 거치는 모든 경로를 작성한 것
윈도우 바탕화면의 절대 경로 = c:/users/ssafy/desttop

상대경로
-현재 작업하고 있는 디렉토리를 기준으로 계산된 상대적 위치를 작성한 것
현재 작업하고 있는 디렉토리가 c:/users일때 윈도우 바탕화면으로의 상대경로는 ssafy/desktop
./ : 현재 작업하고 있는 폴더
../ : 현재 작업하고 있는 폴더의 부모 폴더

마크다운

  • 텍스트 기반의 가벼운 마크업 언어
  • 문서의 구조와 내용을 같이 쉽고 빠르게 적고자 탄생

마크업

  • 태그를 이용하여 문서의 구조를 나타내는 것
#  
- 갯수에 따라 제목이나 소제목을 나타낼 떄 사용

**강조**
 굵은 글씨

git 기본기

README.md

  • 프로젝트에 대한 설명 문서
  • github 프로젝트에서 가장 먼저 보는 문서
  • 일반적으로 소프트웨어와 함께 배포
  • 작성 형식은 따로 없으나, 일반적으로 마크다운을 이용해 작성

repository

  • 특정 디렉토리를 버전 관리하는 저장소 << 히스토리, 태그, 브랜치
  • git init 명령어로 로컬 저장소를 생성
  • .git 디렉토리에 버전 관리에 필요한 모든 것이 들어있음.

README.md 생성하기

  1. 새 폴더를 만들고 readme.md파일을 생성해주세요
  2. 이 파일을 버전 관리하며 git 을 사용해 봅시다.

working directory 현재 작업하고 있는 폴더

staging Area 히스토리(커밋)를 기록하기 전에 대기

rspository 버전 관리가 되는 파일.

staging Area 가 있는 이유

  1. 일부분만 커밋하고 싶을떄 : 워킹 디렉토리 골라서 커밋하고 싶을때...!

  2. 충돌을 해결할 때 : 협업 과정에서 여러 사람이 파일을 작업하게 되는데... 수정사항이 겹치는 영역에 대해서... Staging Area를 통해 충돌을 해소

  3. 커밋을 다시 고치고 싶을 때 로그 메시지만 고치는 게 아니라, 파일을 수정하고 다시 커밋(버전을 수정)하고 싶다면 'commit --amend'

working directory
내가 작업하고 있는 실제 디렉토리

staging Area
커밋 으로 남기고싶은 특정 버전으로 관리하고싶은 파일 이있는곳

rspository
커밋 들이 저장되는 곳

git add readme.md
staging Area 로 보내기

git commit -m " 할 말 "
커밋 하기

git add .
모든 파일 보내기


github repository

local repositiory


readme.md 수정하고 push하기.

About


Languages

Language:Python 100.0%