[Git] Version Control System (VCS)
Study/Git

[Git] Version Control System (VCS)

Version control System

A version control system is a system that records changes to a file or set of files over time.

버전 관리 시스템은 파일 변화를 시간에 따라 기록했다가 나중에 특정 시점의 버전을 다시 꺼내올 수 있는 시스템이다.

  • revert selected files back to a previous state
  • revert the entire project
  • compare changes over time
  • see who last modified something that might be causing a problem
  • who introduced an issue and when

 

 

Local Version Control

Local version control has limitations.

  • No back-ups
  • No collaboration
  • Hard to maintain multiple files.

git-scm.com

 

 

Centralized Version Control

Centralized version control systems are better but have drawbacks.

  • Single point of failure
  • If the shared server is down, you cannot save versioned changes to anything.
  • Require connection to the server

 

Examples: CVS, Subversion, Perforce

 

git-scm.com

중앙집중식 버전 관리(CVCS)는 파일을 관리하는 서버가 별도로 있고 클라이언트가 중앙 서버에서 파일을 받아 사용(checkout)한다.

Local VCS보다 관리가 쉽지만 중앙 서버에 문제가 발생할 경우 치명적이라는 단점이 있다.

 

 

Distributed Version Control

Distributed version control systems fully mirror the remote repository to a local machine, including its full history.

  • Even the server dies, any of the client repos can be copied back up to the server.

 

Examples: Git, Mercurial, Bazzar, Darcs

 

git-scm.com

분산 버전 관리 시스템(DVCS)은 클라이언트가 저장소를 히스토리와 더불어 전부 복제하여 서버에 문제가 생기더라도 복제물로 다시 작업을 할 수 있다.

대부분의 DVCS 환경에서는 리모트 저장소가 존재하여 동시에 다양한 그룹과 다양한 방법으로 협업이 가능하다.

 

 

For most of time with Git, you will save code changes to your local repos.

git commit

 

Sometimes, you will upload the changes in the local repo to the remote.

git push

 

Or, download the changes from the remote to reflect changes made by others.

git fetch

 

 

 

 

'Study > Git' 카테고리의 다른 글

[Git] Git Basics  (0) 2021.09.13