VCS 및 파일 버전에 대한 공식적인 CS 정의가 있습니까?


12

나는 그것이 농담인지 알지 못하지만 일단 git, hg 또는 svn과 같은 버전 관리 시스템에서 파일의 공식적인 정의를 읽었습니다. 동종 요법과 같은 수학적 대상과 같은 것이 었습니다. VCS의 버전 관리 시스템과 수학에 대한 농담입니까, 아니면 컴퓨터 과학 이론입니까?


2
나는 homemorphism을 homeomorphism으로 바꾸었지만,이 맥락에서 토폴로지를 어디에서 찾을 지에 대한 실마리는 없습니다. 동질성을 의미 했습니까?
frafl

3
en.wikibooks.org/wiki/Understanding_Darcs/Patch_theory 또는 projects.haskell.org/camp 같은 것 ? 이론과 프로그래밍에 관해서는 항상 haskell을 검색하는 것이 좋습니다. 나는 이것을 답으로 바꿀 수 있지만,이 분야에 대해 더 잘 알고있는 사람들이 있다고 생각합니다.
frafl


수행중인 작업에 대한 강력한 공식화없이 버전 관리 시스템처럼 복잡하고 중요한 것을 구축하지 마십시오. 자신을 해킹하는 사람들은 때때로 천재 일지 모르지만 대개 바보입니다.
babou

답변:


11

당신의있는 거 생각 이삭 Wolkerstorfer (@agnoster)에 의해 짹짹 :

브랜치가 힐버트 공간의 하위 매니 폴드를 매핑하는 동종 이형 endofunctors라는 기본 아이디어를 얻으면 git이 더 쉬워집니다.

불행히도, 농담입니다. 으로 저자는 Quora의에 쓴 :

그것은 확실히 혀로 혀로 만들어졌습니다. 나는 실제로 자식을 좋아하고, 그 복잡성이 크게 과장되었다고 생각합니다. 동시에, 나는 git gurus의 초보자부터 초보자까지의 조언이 엉뚱한 횡설수설처럼 들릴 수 있다는 사실에 동조합니다.

더 깊은 의미를 갖는 것은 아닙니다. 이런 방식으로 분석하려고 시도하는 것은 쓸데없는 것이지만 실제로 버그로 인해 충분히 노력하면 실제로 손으로 물결 치는 진술을 할 수 있습니다.

이것은 프로그래머 스택 교환수학 스택 교환 에서 논의되었습니다 .


농담을 제외하고, 버전 관리를 공식화하는 작업이있었습니다. 이론과 실천을 연합시키기위한 한 가지 노력은 David Roundy의 Darcs 에 관한 패치 이론관한 연구 이다. 이론의 주요 목표는 병합, 특히 충돌 해결을 모델링하는 것입니다. Darcs 위키 이론을 소개하고,뿐만 아니라 몇 가지 포인터가 참고 문헌 (그래서 당신은 주제에 최근보기를 원하지만이리스트에게 않는 경우 구식 관리되지 않는 페트르 Baudiš에 의해 2009 설문 조사 용지 및 목록) 회담 ( 최신 자료를 포함합니다). 도있다 wikibook은 . 하나의 주요 논문은 버전 관리에 대한 주요 접근 방식입니다안드레스 LOH, WOUTER Swierstra 및 Daan Leijen3에 의해 .

패치 이론은 최근에 탐구 된 범주 모델로 이어질 않는 패치의 범주 이론 사무엘 Mimram 및 Cinzia 디 Giusto은로Homotopical 패치 이론 카를로 Angiuli, 에드 모어 하우스, 다니엘 R. 리카 타와 로버트 하퍼 . Mimram과 Di Giusto의 작품에서 모델은 파일을 객체로, 패치를 형태로 만듭니다. 단일 리포지토리에서 작업하는 경우 브랜치를 병합하는 기능을 수행합니다. “동종 형태 성 endofunctor”는 나에게 이해가되지 않습니다. 동성애 이론과 관련하여, 힐버트 공간의 하위 매니 폴드는 그리 멀지 않을 수 있습니다 ...


3

물론 버전 제어 시스템에는 수학적 형식이 있습니다. CS의 거의 모든 알고리즘에는 수학적 형식이 있습니다. 가 있습니다 여러 많은 형식주의는. 형식주의와 그것들이 모델링 하는 시스템 사이에는 1-1 관계가 없다 . 모델은 단순한 것에서 복잡한 것까지 다양합니다. 다음은 아직 언급되지 않은 Swierstra의 VCS / SCM에 대한 예입니다 .

SCM은 또한 "평행 우주 / 타임 라인" 의 개념 과 공상 과학에서 때때로 사용되는 시간 여행 과 많은 유사점을 가지고 있습니다. 다른 시간 또는 "스냅 샷"에서 진화하는 시스템의 상태를 캡처합니다. "분기"와 "병합"이 있습니다. 타임 라인 도 참조하십시오 .

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.