백엔드 개발 PHP 튜토리얼 SVN이란 무엇입니까?

SVN이란 무엇입니까?

Dec 24, 2018 am 11:24 AM
svn

SVN이란 무엇입니까?

SVN(Subversion)이란 무엇인가요?

2010년 이전에는 Apache Subversion(줄여서 SVN)이 가장 인기 있는 버전 제어 시스템 중 하나였습니다. 요즘 SVN의 인기는 줄어들고 있지만 여전히 수백만 개의 행이 SVN에 저장되어 있습니다. 비록 소규모 오픈 소스 커뮤니티에 의해서도 계속해서 활발하게 유지관리되고 있습니다.

SVN의 탄생

1990년대 후반에는 CVS(Concurrent Versions System)가 오픈 소스와 상용 프로젝트 모두에서 소프트웨어 개발에 널리 사용되었습니다. 그러나 CVS는 비판을 받기 시작했다. 타사 도구에 대한 지원이 부족하며 http/https/ssh 프로토콜에 대한 지원이 전혀 없습니다. 이는 곧 표준 이하가 되었고 더 나은 시스템이 필요했습니다.

2000년, SVN의 개발이 본격적으로 시작되었습니다. 목표는 CVS의 호환 가능한 후속 제품을 만드는 것입니다.

SVN 개발은 2000년에 시작되었지만 2004년 2월이 되어서야 버전 1.0이 출시되었습니다. 이는 CVS에 있는 많은 기능을 모방하지만 CVS에 없는 새로운 기능도 도입합니다. 이제 사용자는 원자 명령을 실행할 수 있고 버전이 지정된 파일의 이름을 바꾸고 이동할 수 있습니다.

SVN은 2009년 11월 Apache Incubator에 승인되면서 Apache 프로젝트가 되었습니다. SVN이 세상에 소개된 후 CVS 채택은 점차 사라졌습니다.

관련 기사 추천:
1.Git과 Svn의 차이점은 무엇인가요
2.Svn 도구 설치 방법
관련 동영상 추천
:
1.SVN 동영상 튜토리얼(Chuanzhi Podcast)

Subversion은 어떻게 작동하나요?

SVN은 원래 명령줄 인터페이스로 설계되었습니다. 이는 터미널을 열고 텍스트 명령을 입력한다는 의미입니다.

Subversion이 작동하려면 SVN 설정에 두 가지 주요 요소가 필요합니다.

1 모든 소스 파일의 모든 버전이 있는 서버

2 컴퓨터에 있는 파일의 로컬 복사본.

컴퓨터에 있는 파일을 작업 파일이라고 합니다. 각 사용자가 편집하는 파일입니다. 그런 다음 사용자는 repository라고도 알려진 SVN 서버에 변경 사항을 커밋합니다.

사용자가 변경 사항을 커밋할 때마다 SVN은 새 버전을 생성하여 이를 관리하고 기록합니다. 대부분의 버전 제어 시스템과 마찬가지로 사용자는 일반적으로 최신 버전을 사용합니다. 하지만 이전 버전이 필요한 경우 이전 버전으로 되돌릴 수 있습니다.

SVN 서버란 무엇인가요? (Subversion 서버란 무엇입니까?)

SVN 서버에는 모든 소스 파일과 모든 버전의 파일이 포함되어 있습니다. SVN 세계에서는 서버를 리포지토리라고 합니다. 따라서 SVN 서버와 SVN 저장소는 동일합니다.

컴퓨터에 저장된 파일의 로컬 복사본을 작업 복사본이라고 합니다.

SVN은 분산형인가요 아니면 중앙형인가요?

버전 제어 시스템은 대략 분산 버전 제어 시스템(DVCS)중앙 집중형 버전 제어 시스템(CVCS)의 두 가지 범주로 나눌 수 있습니다.

SVN은 중앙 집중식 버전 관리 시스템입니다.

중앙 집중식 버전 관리 시스템은 버전 기록이 중앙 서버에 저장된다는 의미입니다. 개발자가 특정 파일을 변경하려는 경우 이 중앙 저장소에서 컴퓨터로 파일을 가져옵니다. 개발자는 변경한 후 변경된 파일을 다시 중앙 저장소로 보냅니다.

Helix Core를 사용한 확장 가능한 중앙 집중식 버전 제어 시스템. 또는 Git 기반 분산 워크플로에 Helix4Git을 사용하세요.

SVN이 직면한 과제

SVN에는 번거로운 분기 모델이 있습니다

SVN에 대한 가장 일반적인 불만은 번거로운 분기 모델입니다. 브랜치를 사용하면 여러 버전의 코드를 동시에 작업할 수 있습니다. SVN에서는 브랜치가 저장소에 디렉터리로 생성됩니다. 많은 개발자는 이 디렉터리 구조를 좋아하지 않습니다. 그러나 도전은 여기서 끝나지 않습니다.

SVN 버전 1.6에는 트리 충돌이라는 개념이 도입되었습니다. 트리 충돌은 디렉터리 구조의 변경으로 인해 발생하는 충돌이며 자주 발생합니다. SVN에서는 트리 충돌이 발생할 때 변경 사항을 커밋하는 것을 허용하지 않기 때문에 이로 인해 SVN에서 분기 전략을 구현하는 복잡성이 증가합니다.

SVN에서는 중앙 저장소에 연결해야 합니다.

변경 사항을 커밋하려면 SVN에서 중앙 저장소에 연결해야 합니다.

중앙 저장소에 연결하지 않고 SVN을 사용하는 것은 의미가 없습니다. 예를 들어, 비행 중에 오프라인으로 코딩하는 경우 SVN에서는 연결이 복원될 때까지 중앙 저장소에 커밋할 수 없습니다.

SVN에서는 충돌을 수동으로 해결해야 합니다.

병합은 개발자가 SVN에 대해 자주 불평하는 또 다른 큰 문제입니다. 히스토리를 사용하여 한 세트의 변경 사항을 만들고 커밋한 다음 또 다른 변경 사항(예: 선형)이 만들어지고 커밋되면 병합이 쉽습니다.

두 명 이상의 개발자가 동일한 코드 기반에서 작업하고 병합해야 하면 상황이 복잡해집니다. 이 경우 SVN이 실패하고 개발자는 충돌을 수동으로 해결해야 하므로 개발자 시간이 몇 시간씩 낭비됩니다.

SVN을 사용하는 이유

몇 년 전만 해도 Git을 비롯한 상용 제어 시스템이 SVN을 능가했습니다. 하지만 SVN에는 여전히 두 가지 이유가 있습니다: 비용과 관성 .

cost: SVN은 오픈 소스이므로 "무료"입니다.

Inertia: 대규모 코드 기반을 구축하면 VCS를 전환하기 어려울 수 있습니다. SVN은 2004년부터 존재해 왔으며 이를 채택한 조직은 수백만 줄의 코드를 보유하고 있습니다.

위 내용은 SVN이란 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

PHP 개발에서 버전 제어를 위해 SVN을 사용하는 방법 PHP 개발에서 버전 제어를 위해 SVN을 사용하는 방법 Jun 27, 2023 pm 01:39 PM

버전 관리는 PHP 개발에서 매우 일반적인 작업이며 가장 일반적으로 사용되는 도구는 SVN(Subversion)입니다. 공동 개발 중에 코드의 기록 버전과 코드 업데이트를 쉽게 관리할 수 있습니다. 다음은 PHP 개발에서 버전 관리를 위해 SVN을 사용하는 방법을 소개합니다. 1. SVN 클라이언트 및 서버 설치 먼저 SVN 클라이언트 및 서버를 설치해야 합니다. SVN 클라이언트는 SVN 공식 웹사이트에서 해당 버전을 다운로드하여 설치할 수 있으며, 서버는 직접 구축해야 합니다. 구체적인 방법은 다음과 같습니다.

Java SVN: 코드 저장소의 수호자로서 코드 안정성을 보장합니다. Java SVN: 코드 저장소의 수호자로서 코드 안정성을 보장합니다. Mar 09, 2024 am 09:20 AM

SVN 소개 SVN(Subversion)은 코드 베이스를 관리하고 유지하는 데 사용되는 중앙 집중식 버전 제어 시스템입니다. 이를 통해 여러 개발자가 동시에 코드 개발에 협력할 수 있으며 코드 수정 내역에 대한 완전한 기록을 제공합니다. SVN을 사용하여 개발자는 다음을 수행할 수 있습니다. 코드 안정성을 보장하고 코드 손실 및 손상을 방지합니다. 코드 수정 내역을 추적하고 이전 버전으로 쉽게 롤백할 수 있습니다. 공동 개발, 여러 개발자가 충돌 없이 동시에 코드를 수정합니다. 기본 SVN 작업 SVN을 사용하려면 TortoiseSVN 또는 SublimeMerge와 같은 SVN 클라이언트를 설치해야 합니다. 그런 다음 다음 단계에 따라 기본 작업을 수행할 수 있습니다. 1. 코드 베이스 svnmkdirHttp://exampl을 생성합니다.

EclipseSVN 플러그인 설치 및 설정 방법에 대한 자세한 설명 EclipseSVN 플러그인 설치 및 설정 방법에 대한 자세한 설명 Jan 28, 2024 am 08:42 AM

EclipseSVN 플러그인 설치 및 설정 방법에 대한 자세한 설명 Eclipse는 기능을 확장하기 위해 다양한 플러그인을 지원하는 널리 사용되는 통합 개발 환경(IDE)입니다. 그 중 하나는 개발자가 Subversion 버전 제어 시스템과 상호 작용할 수 있게 해주는 EclipseSVN 플러그인입니다. 이 기사에서는 EclipseSVN 플러그인을 설치 및 설정하는 방법을 자세히 설명하고 특정 코드 예제를 제공합니다. 1단계: EclipseSVN 플러그인 설치 및 Eclipse 열기

svn diff를 vimdiff로 교체: 코드 비교 도구 svn diff를 vimdiff로 교체: 코드 비교 도구 Jan 09, 2024 pm 07:54 PM

Linux에서는 svndiff 명령을 직접 사용하여 코드 수정 사항을 보는 것이 매우 어려우므로 인터넷에서 더 나은 솔루션을 검색했습니다. 특히 vimdiff 사용에 익숙한 사람들을 위해 svndiff의 코드 보기 도구로 vimdiff를 사용하는 것입니다. vim. 매우 편리합니다. svndiff 명령을 사용하여 특정 파일의 수정 사항을 비교할 때, 예를 들어 $svndiff-r4420ngx_http_limit_req_module.c 명령을 실행하면 다음 명령이 실제로 기본 diff 프로그램으로 전송됩니다. -u-Lngx_http_limit_req_module.c (개정4420)-Lngx_

CentOS에 SVN 설치 및 명령줄 설치 CentOS에 SVN 설치 및 명령줄 설치 Feb 13, 2024 am 11:24 AM

CentOS에 SVN을 설치하는 것은 매우 일반적인 작업입니다. 소프트웨어 개발 중에 변경 사항을 관리하고 추적하는 데 사용할 수 있는 강력한 버전 제어 시스템입니다. 이 기사에서는 CentOS에 SVN을 설치하는 방법을 자세히 소개하고 일반적으로 사용되는 몇 가지 도구를 제공합니다. 라인 설치 방법. CentOS에 SVN을 설치하는 방법에는 여러 가지가 있습니다. 아래에서는 두 가지 일반적인 설치 방법을 소개합니다. 1. 터미널을 열고 루트 사용자로 로그인합니다. 2. 다음 명령을 실행하여 시스템 패키지 목록을 업데이트합니다. ``yumupdate3. 다음 명령을 실행하여 SVN을 설치합니다: yuminstallsubversion4. 설치가 완료된 후 다음 명령을 실행하여 SVN이 성공적으로 설치되었는지 확인할 수 있습니다. -V

svn과 vss의 차이점은 무엇입니까 svn과 vss의 차이점은 무엇입니까 Jun 21, 2022 am 11:23 AM

차이점: 1. vss는 Microsoft에서 개발했으며 유료인 반면 svn은 오픈 소스이며 무료입니다. 2. vss에는 클라이언트가 있어야 하지만 svn은 클라이언트, 명령줄 모드 또는 웹 페이지 액세스에서 읽기 전용을 사용할 수 있습니다. 3. vss는 Windows 시스템만 지원하는 반면, svn은 Windows 및 Linux 시스템을 지원합니다. 4. vss는 "잠금-편집-잠금 해제" 모드이고 svn은 기본적으로 "수정-충돌-병합" 모드입니다. vss는 단일 파일에 해당하며, svn의 버전 번호는 전체 버전 라이브러리에 해당합니다.

Linux 개발자를 위한 필수 기술: SVN 버전 제어를 마스터하기만 하면 됩니다. Linux 개발자를 위한 필수 기술: SVN 버전 제어를 마스터하기만 하면 됩니다. Jan 26, 2024 pm 09:54 PM

Linux 개발자는 프로젝트 버전을 제어하기 위해 SVN을 사용해야 하는 경우가 많습니다. 우수한 개발자에게 SVN 버전을 확인하는 방법을 아는 것은 의심할 여지 없이 필수적인 기술 중 하나입니다. 오늘 저는 여러분이 이 실용적인 기술을 더 잘 익히는 데 도움이 되기를 바라며 이 기회를 빌어 여러분과 제 경험을 공유하고 싶습니다. 1. SVN 명령줄 도구를 설치하려면 먼저 Linux 환경에 SVN 명령줄 도구를 설치하세요! 터미널에 전화를 걸고 다음 명령을 안전하게 입력하여 설치를 완료하십시오. ```사용자님, Subversion을 설치하려면 sudoapt-getinstallsubversion을 실행하십시오. 2. SVN 서버에 연결 설치가 완료되면 SVN 서버에 연결해야 합니다. 다음 명령을 입력하십시오.

PHP 시작하기: SVN 버전 관리 PHP 시작하기: SVN 버전 관리 May 20, 2023 am 08:29 AM

일반적으로 사용되는 서버 측 스크립팅 언어인 PHP는 오픈 소스 및 크로스 플랫폼 장점으로 인해 웹 개발 분야에서 널리 사용됩니다. 여러 사람이 함께 협업하는 개발에서 버전 관리는 소스 코드의 수정 및 업데이트를 효과적으로 관리하고 팀 구성원 간의 코드 동기화 중단으로 인한 충돌을 방지할 수 있는 필수 도구입니다. 널리 사용되는 버전 제어 도구인 SVN은 PHP 개발에도 널리 사용됩니다. 이 기사에서는 SVN 설치를 포함하여 PHP 개발에서 SVN 버전 제어에 대한 기본 지식을 소개합니다.

See all articles