수동으로 내 지사를 추적하고 내 저장소에서 병합하는 것에 지쳤습니다. 너무 오류가 발생하기 쉽습니다. 모든 사람이 중복을 줄이고 모든 것을 자동화하는 아이디어를 얻는 것처럼 보일 때, Subversion 분기/병합은 80 년대에 남겨진 것처럼 느껴집니다. 분산 형 SCM 패러다임의 복잡성을 추가하지 않고 우수한 분기 및 병합 지원 기능을 갖춘 Subversion에 대한 좋은 대안은 무엇입니까? 이상적으로 그것은 자유로울 것이나, 나가 약간 현금을 밖으로 내야하는 경우에 나는 그것이 충분히 좋다면 나는 기울어 질지도 모른다.우수한 분기 및 병합 지원 기능을 가진 우수한 Subversion 대신 우수한 분산 형 서비스는 무엇입니까?
답변
분산 솔루션. 젠장, 수은 등. 내 취향은 자식 될 것입니다.
나는 그와 사랑에 빠졌어요.
Git과 같은 분산 버전 제어에 대해 살펴 보셨습니까? 각 "체크 아웃"은 본질적으로 지점입니다 ... 소스 제어에 대해 생각하는 방식이 상당히 다릅니다.
젠투는 Linus Torvalds가 만든 것으로 리눅스 용으로 많이 사용된다.
그는 비 분배라고 말했다. :) –
이 질문에 대한 답변이 이전에 게시되었습니다. – Luke
Perforce은 훌륭한 도구이지만 2 명 이상의 사용자는 전문가 대상으로 비용이 많이들 것입니다. 우리는 꽤 무거운 브랜칭 스키마 (주요 개발 중 기능 당 1 개의 브랜치)와 함께 사용하며 잘 작동합니다. Microsoft (Perforce의 수정 된 이전 버전 사용)에서 사용하는 "Spider web"브랜칭과 같은 종류이지만 지금은 온라인에서 이야기를 찾을 수 없습니다.
Perforce 도구는 무료이지만 (P4V) 사용자 라이센스가 비싸다! –
ClearCase를 많이 사용했습니다. 병합 작업을 자주 수행하는 동안에는 손쉽게 작업을 수행 할 수 있으며 백그라운드에서 병합 작업을 수행 할 수도 있습니다. 병합 충돌이있을 경우 개입해야합니다.
그러나 비용이 많이 들고 숙련 된 Clearcase 관리자를 찾기가 어려울 수 있습니다.
개인적으로 불쾌감을 느끼지 않지만 ClearCase가 싫습니다! 우리는 나의 마지막 회사에서 그것을 사용했고, SVN은 신선한 공기의 숨결이었습니다! 나는 체크 아웃/수정/체크 인 방법론을 견딜 수 없으며, 원자 checkins가 부족하다는 것을 알고 있습니다. –
나는 실제로 checkout/modify/checkin 방식을 선호하지만 ClearCase에는 문제가 있음을 인정합니다. WAN이나 VPN을 통한 성능은 매우 시끄러운 프로토콜을 사용하기 때문에 끔찍합니다. 그것은 CCRC의 주소였으며 가까운 장래에이 제품이 주요 제품에 포함될 것으로 믿습니다. –
git - http://git.or.cz/ (나는 아주 좋아, 훌륭한 @ 분기 및 분산 개발) - http://github.com/은 훌륭한 작업 예제입니다.
Git, 의욕, 바자, Darcs
억지로는 최대 2 사용자를위한 무료입니다.
저는 자동화 할 수있는/수행해야 할 내용에 대해 100 % 확실하지 않지만, perforce는 매우 높은 품질입니다. 가지를 쉽게 만들고 유지 관리 할 수 있으며 쉽게 병합 할 수 있습니다. 체리를 사용하여 하나의 브랜치에서 변경 한 특정 변경 사항을 에서 선택하고 높은 수준의 자동화로 다른 브랜치에 병합하는 것은 매우 쉽습니다.
분기/병합 작업이 많은 이유는 무엇입니까? 개발 프로세스를 단순화 할 수있는 방법이 있습니까?
Subversion, IMHO는 KISS (간단하고 어리 석다) 원칙을 잘 적용합니다. 번역 : 내 경험상보다 복잡한 도구를 만드는 것보다 개발 프로세스 간소화로 인한 생산성 향상 효과가 훨씬 클 것입니다.
일부 개발자 역할에서는 작동하지만 일부에서는 작동하지 않을 수 있습니다. 팀에 도움을 요청하거나 무언가를 시도하는 개발자가있을 수 있습니다. Subversion에서는 작업 공간을 깨끗하게 유지할 수있는 합리적인 방법이 없습니다. git을 사용하면 변경 내용을 숨기거나 새로운 로컬 브랜치/문제를 시작할 수 있습니다. – jrudolph
나는 아마도 이것을 위해 불타 오르게 될 것이지만, 무료 제품을 원하지 않는다면 MS Team Foundation Server를 살펴볼 가치가 있습니다. 이름이없는 채로 남아있는 다른 MS 제품과 달리 소스 컨트롤은 완전하고 완벽합니다.IDE 통합, 자동화 된 빌드/테스트 엔진 및 작업 관리 기능과 결합하면 매우 좋습니다. 물론, 회사를 겨냥하여 가격을 책정해야합니다.
참고 : 주로 Visual Studio에서 개발하지 않은 경우에는 신경 쓰지 않아도됩니다.
Subversion 1.5로 업그레이드하셨습니까? 여기에는 자동화 된 병합 추적 기능이 포함됩니다. 이것은 귀하의 문제를 해결할 수 있습니다. 이미 도구 자체에 익숙하고 무료입니다. 따라서 현재 솔루션을 1.5로 업그레이드하면 학습 곡선이 거의없고 비용이 거의 들지 않으며 기존 코드를 새로운 소스 코드 제어 시스템으로 이식해야하는 번거 로움을 겪지 않아도됩니다.
svnmerge.py보다 훨씬 나쁜 IMHO, svn 1.5의 병합 추적 기능이 작동합니다. +1 아래에있는 모든 답변에 대해 Git을 제안하고 dVCS 기능을 무시합니다. –
제 경험상 SVN 1.5는 병합 및 병합 추적과 관련하여 다소 거친 부분을 가지고있었습니다. 그러나이 글을 쓰면서 우리는 현재 1.7.x 시리즈에 있으며 병합은 훨씬 더 낫습니다. –
이것은 SVN 대신 CVS에 대한 대안으로 구성되어 있지만 상관없이 다른 비 분산 구성원을 포함하여 몇 가지 대안을 나열합니다. http://better-scm.berlios.de/alternatives/
전복의 대안은 좋을 수도 있지만 립스틱을 사용한 전복은 잘 될 수 있습니다. Mac에서 실행되는 Subversion의 프런트 엔드에 대한 리뷰는 다음과 같습니다. http://www.geocities.com/~karlvonl/blog/2006/03/daddy-needs-new-subversion-gui.html
바자회와 함께 바자를 사용할 수있는 가능성도 있습니다 http://bazaar-vcs.org/BzrForeignBranches/Subversion – Mauli
또한 서브 버전의 이전 버전에서 이러한 제한 아팠다. 그러나 우리 회사의 다른 누구도 분기 및 병합을 사용하지 않습니다. 그들 각각은 새로운 기능을 시도 할 때 다른 체크 아웃을 얻었고, 해킹을 해킹하고 악의적 인 경우 제거했습니다. 가끔씩 그들은 뭔가 나쁜 것을 저 지르려고했다.)
그래서 git + svn을 사용하기 시작했다. 의미 : 나는 svn 체크 아웃을 가지고 있고이 디렉토리에서 git를 시작했다. 지금 나는 병합과 분기가 있으며 다른 어떤 것도 중단하지 않습니다. 새로운 기능 X를 사용해보고 싶다면 branch/checkout/hack-hack을 실행하면된다. SVN 저장소에서 중요한 업데이트를 가져 오려면 지금 필요합니다. git stash, git checkout master, svn update, git commit -a, git checkout feature-X, git rebase, git stash apply (이 모든 것은 git-svn이 Windows에서 작업).
많은 작업처럼 보이지만 속도가 빠릅니다. 나는 정말로 빠르다. 필요한 유연성을 제공하십시오 (my article on git + visual studio 참조).
나는 바사가 비슷한 것을 할 수 있고 일 수도 있다고 생각합니다.은 더 쉽게 할 수 있습니다 : 그것은 쉽게 non-distributed, central-repository based development을 지원할 수 있습니다.
아직 언급되지 않은 한 가지 점은 same centralized manner that you're used to with Subversion에서 git를 완벽하게 사용할 수 있다는 것입니다. 정말 뛰어난 소프트웨어입니다.
DarenW에 추가하기 만하면됩니다. Windows의 경우 실제로 무료 인 Subversion 서버 제품이있어 꿈을 꾸으십시오 (VisualSVN Server). 이 패키지는 최신 Subversion 빌드를 단일 MSI 설치 프로그램으로 패키지하고 매우 유용한 관리 콘솔을 추가합니다.
GIT와 같이 DVCS에 대해 복잡한 점이 무엇이라고 생각하십니까? 클라이언트/서버가없고 다른 장소에서 작업 디렉토리가있는 한 곳에서 repo하지 않으며 사용자 관리가 내장되어 있지 않습니다 (필요한 경우 ssh 사용). Jim Puls가 말했듯이 원하는 경우 비 분산 형 DVCS를 사용할 수 있습니다. 저는 GIT를 한 사람 만의 프로젝트에 사용합니다. 심지어 몇 주간 지속되는 프로젝트도 있습니다.Tortoise와 똑같은 것은 없지만 SVN에서 본 것보다 gitk, qgit 및 git-gui가 더 좋습니다. 나는 guis를 선호 했었지만 지금은 git 명령 줄을 아주 좋아합니다.하지만 약간의 improvents를 확인하십시오.
나는 Perforce 가게에서 Subversion shop으로 와서 Perforce가 가지고있는 위대한 분기 및 병합 지원을 놓쳤습니다. 그래서, 퍼포는 나의 첫 번째 추천이 될 것이지만 그 다음에는 돈이 들게됩니다 :).
Subversion 1.5는 병합 추적 지원이 유망 해 보이지만 근본적인 것으로 표시되어 조만간 수락 할 수있는 (즉, Perforce와 같은) 병합 지원이 최소화 된 것처럼 보이지 않습니다. 분기
- 을 실제 잘 작동을 병합 및 방법에 나는
- 그것은이 centralized workflow
- Supports Subversion branches, working copies, and repositories 사용할 수 있습니다 기대 :
그래서, 내가 특별히 바자, 분산 VCS쪽으로 기울고 있어요 . 즉, 우리 팀은 Subversion을 사용하는 대규모 조직에서 Bazaar를 사용할 수 있으며 그와 함께 코드를 공유 할 수 있습니다.
Accurev를 확인해야합니다. 브랜치와 같이 새로운 스트림 생성을 가리키고 클릭하면 스트림을 통과하는 코드의 전체 개념이 병합과 병목 현상을 덜 수 있습니다. 관리가 매우 간편하고 3 명의 사용자가 무료로 라이센스를 취득 할 수 있으며 멋진 시각화 도구가 내장되어 있습니다.
+1 우리 가게에서는 AccuRev를 사용하지 않습니다. 스트림 기반 패러다임은 처음 엔 어려움을 겪기는 어렵지만, 일단 그것을 얻으면 갑자기 내가 현재 시스템으로 할 수없는 모든 것을 보았습니다. ( – Benjol
Plastic SCM은 모두 분기 및 병합과 관련이 있습니다. GUI를 확인하고 다른 대안과 비교하십시오.
- 1. 우수한 DNS 관리 옵션?
- 2. 다른 JFrame보다 우수한 JFrame 만들기
- 3. 우수한 무료 모델링 소프트웨어가 있습니까?
- 4. 이러한 쿼리 중 성능이 우수한 쿼리는 무엇입니까?
- 5. Flex 어플리케이션이 Flash보다 성능이 우수한 이유는 무엇입니까?
- 6. VS2005 바이너리가 VS2008 바이너리보다 우수한 성능을 발휘합니다.
- 7. ScriptControlClass보다 우수한 C# ECMAScript 엔진이 있습니까?
- 8. ASP.Net - 실적이 우수한 웹 응용 프로그램 만들기
- 9. Pic18 마이크로 용으로 가장 우수한 C 컴파일러는 무엇입니까
- 10. .net에서 가장 우수한 기술은 무엇입니까? 웹 개발을 위해서
- 11. GUI 프레임이란 무엇입니까? twitter, www.groupon.com 등의 GUI가 우수한 웹 사이트입니다.
- 12. Unix 파일 시스템이 Windows 파일 시스템보다 우수한 이유는 무엇입니까?
- 13. $ 25 이하로 다운로드 할 수있는 우수한 SMTP 서버는 무엇입니까?
- 14. Javascript Ajax 다른 페이지와 함께 우수한 성능 저하?
- 15. Subversion - 분기/병합
- 16. 어떤 C++ 크로스 플랫폼 GUI 프레임 워크가 우수한 스키닝 기능을 가지고 있습니까?
- 17. 관련 지오 태깅 이미지 중 가장 우수한 라이브러리는 어느 것입니까?
- 18. UI : 많은 양식, 표가있는 우수한 UI를위한 권장 도서입니까?
- 19. StructureMap을 사용하여 다른 프로젝트 조직보다 우수한 프로젝트 조직 중 하나입니까?
- 20. Java를 사용하여 Microsoft Exchange에 액세스 - 더 우수한 API
- 21. 견고한 C# 모듈 개발에 관한 우수한 고급 서적
- 22. 피드에 대한 사용자 위치가있는 매우 우수한 강력한 jquery 날씨 구현
- 23. postfix 메일 큐 파일을보기위한 postcat보다 우수한 도구가 있습니까?
- 24. 2010 년 현재 Rails 기반의 우수한 콘텐츠 관리 시스템은 무엇입니까 (Typo?)?
- 25. 벡터 수학 및 복소수를 지원하는 우수한 오픈 소스 C/C++ 수학 라이브러리는 무엇입니까?
- 26. 우수한 Z- 색인 값을 사용하여 div 뒤에 링크를 만드는 방법은 무엇입니까?
- 27. Subversion 저장소를 분산 된 CMS로 분기
- 28. HQL을 사용하여 최소 득표 수의 가장 우수한 기사의 정렬 된 목록을 검색하는 방법은 무엇입니까?
- 29. TortoiseSVN/Subversion - 분기 간 주기적 병합
- 30. Svn 병합 트렁크 및 분기
호기심에서 벗어난 이유는 왜 분산 시스템보다 중앙 집중식 시스템을 원하십니까? 중앙 집중식 워크 플로우를 에뮬레이트하기 위해 일부 dvcs를 설정할 수 있습니다. Git과 Bazaar는이 점을 염두에두고 있습니다. – baudtack