코드 협동조합

Code Co-op
코드 협동조합
Code Co-op.png
개발자신뢰성 높은 소프트웨어
초기 릴리즈1996년; 26년 전(1996년)
안정된 릴리스
5.2a / 2011년 6월 4일; 11년 전 (2011-06-04)
저장소
운영 체제창문들
이용가능기간:영어
유형리비전 관리
면허증.MIT
웹 사이트web.archive.org/web/20180211130625/http://www.relisoft.com/co_op/index.htm Edit this on Wikidata

Code Co-op은 Reliable Software에 의해 만들어진 피어피어 리비전 제어 시스템입니다.

특징의 구별

Code Co-op은 복제된 유형의 분산 리비전 제어 시스템입니다.

P2P 아키텍처를 사용하여 개발자 간에 프로젝트를 공유하고 파일 변경을 제어합니다.중앙 집중식 데이터베이스(저장소)를 사용하는 대신 프로젝트에 관련된 각 시스템에 자체 데이터베이스를 복제합니다.

복제본은 (차동) 스크립트를 교환하여 동기화됩니다.스크립트 교환은 이메일(SMTP 및 POP3, MAPI 클라이언트와의 통합, Gmail) 및 LAN 등 다양한 트랜스포트를 사용하여 진행됩니다.

Code Co-op에는 Peer-to-Peer Wiki 시스템이 내장되어 있어 문서를 소프트웨어 프로젝트와 통합할 수 있습니다.또한 텍스트 기반 Wiki 데이터베이스를 만들 수도 있습니다. Wiki 데이터베이스는 Wiki 페이지에서 직접 단순화된 SQL을 사용하여 쿼리할 수 있습니다.

표준 기능

  1. 이메일, LAN 또는 VPN을 통한 분산 개발 지원
  2. 변경 기반 모델 - 여러 파일에 대한 수정이 하나의 트랜잭션으로 체크인됩니다.
  3. 파일 추가, 삭제, 이름 변경 및 이동은 편집과 동일한 수준으로 처리되며 체크인 변경 세트에 어떤 조합으로도 추가할 수 있습니다.
  4. 빌트인 또는 사용자 정의 차이를 사용하여 체크인 전에 파일 변경 내용을 확인할 수 있습니다.
  5. 동기 변경은 수신자가 동일한 방법으로 검토할 수 있습니다.
  6. 3방향 비주얼 머지
  7. 프로젝트 이력은 각 머신에 복제됩니다.이력 버전을 확인, 비교 또는 복원할 수 있습니다.
  8. Visual Studio를 포함한 Microsoft SCC 클라이언트와의 통합

역사

Code Co-op은 최초의 분산 버전 관리 시스템 중 하나였습니다.1997년 [1]5월 제7회 시스템 구성 관리 워크숍에서 첫 선을 보였습니다.

Code Co-op의 개발은 1996년에 시작되었는데, 당시 코드 Co-op을 만드는 분산 소프트웨어 회사인 Reliable Software가 설립되었습니다.신뢰할 수 있는 소프트웨어에는 미국폴란드 간에 효과적인 협업 도구가 필요했습니다.두 나라 사이에 신뢰할 수 있고 저렴한 유일한 통신수단은 이메일이었고, 따라서 이메일을 사용하여 차이를 교환하는 아이디어였다.물론 전송 속도가 느리기 때문에 중앙 집중식 저장소를 사용하는 것은 불가능했습니다.Code Co-op의 각 사용자는 변경 내역을 포함하여 저장소의 전체 복제본을 보유해야 했습니다.

동기에 저속하고 신뢰할 수 없는 전송을 사용하는 분산형 데이터베이스를 설계하는 것으로 문제가 경감되었습니다(나중에 LAN 전송도 고속화되었습니다).또한 여러 사이트 간의 동기화는 일종의 피어 투 피어 프로토콜을 사용해야 합니다.

2018년, 코드 Co-op의 C++ 소스 코드가 MIT 라이센스에 따라 공개되었습니다.

이론적 기초

Code Co-op은 분산 데이터베이스의 한 예입니다.로컬 리포지토리는 이 가상 데이터베이스의 복제본으로 간주됩니다.각 체크인은 분산 커밋(두 단계 커밋의 논블로킹 버전)에 대응합니다.

레퍼런스

  1. ^ Milewski, B. (1997). Distributed source control system. ICSE'97 SCM-7 Workshop. Software Configuration Management. LNCS. Vol. 1235. pp. 98–10. doi:10.1007/3-540-63014-7_8. ISBN 978-3-540-63014-2. ISSN 0302-9743.

외부 링크