왜 모든 사람들이 git을 중앙 집중식으로 사용합니까?
우리는 한번도 만난 적이 없습니다. 당신은 어떻게 모든 사람을 말합니까? ;)
둘째, Git에는 있지만 CVS 또는 SVN에는없는 다른 기능이 더 있습니다. 아마 당신이이 있어야한다는 가정하에있어 단지 기능 에 대한 모든 .
많은 사람들이 CVS 또는 SVN처럼 중앙 집중식으로 사용할 수 있습니다. 그러나 기본적으로 분배 된 VCS와 함께 제공되는 다른 기능을 잊지 마십시오. 모든 사본이 어느 정도 "완료"(모든 지점 및 전체 히스토리 사용 가능)되며 모든 지점은 서버에 연결하지 않고 체크 아웃 할 수 있습니다.
내 생각에 이것은 잊어서는 안되는 또 다른 기능입니다.
즉시 사용 가능한 CVS 및 SVN으로는이 작업을 수행 할 수 없지만 Git은 문제없이 중앙 집중식으로 사용할 수 있습니다.
따라서 변경 사항을 커밋하고 스쿼시 작업 커밋을 함께 커밋 한 다음 내 작업을 가져 와서 기본 개발 지점으로 리베이스 할 수 있습니다.
Git과 함께 제공되는 다른 기능들 :
- 암호화 서명 커밋
- rebasing (재주문 및 스쿼시 커밋; 메시지뿐만 아니라 커밋 편집)
- 체리 따기
- 역사를 이등분하다
- 지역 지점 및 보관 변경 (위키 백과에서는 "선반"이라고 함)
또한 Wikipedia의 다음 세 가지 표를 참조하십시오 -버전 제어 소프트웨어 비교 :
다시 말하지만, 탈 중앙화 된 방식은 사람들이 그것을 사용하게 만드는 기능 만 이 아닙니다 .
- 실제로 사람들이 실제로 Git에 분산 워크 플로를 사용하지 않는 이유는 무엇입니까?
Bitbucked, GitHub 등에서 더 큰 프로젝트에 기여하거나 호스팅하는 사람이라면 누구나 그렇게 할 것입니다. 유지 관리자는 컨트 리뷰 터 복제 본인 "메인"리포지토리를 유지하고 풀 요청을 커밋 한 다음 보냅니다.
소규모 프로젝트 나 팀이있는 회사에서도 분산 워크 플로는 모듈을 아웃소싱하고 외부에서 변경 사항을 검토하지 않고 신성한 개발 지점을 수정하기를 원하지 않는 경우 옵션입니다.
- 최신 버전 관리에 있어서도 분산 방식으로 작동하는 능력이 중요합니까?
항상 그렇듯이 요구 사항에 따라 다릅니다.
포인트가 적용되는 경우 분산 VCS를 사용하십시오.
- 히스토리를 오프라인으로 커밋하거나 탐색하려는 경우 (예 : 휴가 기간 동안 산장의 하위 모듈 완료)
- 중앙 저장소를 제공하지만 변경 내용을 검토하기 위해 "진정한"저장소를 별도로 유지하려는 경우 (예 : 대규모 프로젝트 또는 분산 된 팀)
- 중앙 리포지토리에 직접 액세스하지 못하게하고 (두 번째 리포지토리와 유사) 때때로 전체 기록과 분기를 제공 (복사본)하려고합니다.
- 원격으로 저장하거나 전용 리포지토리를 설정하지 않고도 무언가를 버전 관리하고 싶습니다 (특히 Git을 사용하면
git init .
무언가를 버전 화 할 준비가되어 있어야합니다)
몇 개 더 있지만 4 개이면 충분합니다.
... 아니면 그냥 좋은 소리입니까?
물론 초보자에게는 좋습니다.