엔터프라이즈 환경에서 Git 사용하기


24

Git은 훌륭한 버전 관리 시스템입니다. 훌륭한 GUI 지원이 없다는 사실을 배제하면 정말 좋고 빠릅니다. 그러나 Clearcase와 같은 소스 제어는 엔터프라이즈 고객을 크게 지원합니다. 회사는 소스 제어 서버 및 licesense에 막대한 금액을 투자하고 있습니다.

최근 Google과 같은 대기업 대부분은 다른 버전 제어 시스템보다 Git을 채택하고 있습니다. 그러나이 회사는 도구에 대한 개발 및 지원을 지속적으로 제공하는 강력한 오픈 소스 그룹을 보유하고 있습니다 (Git의 사용자 정의 버전이있을 수도 있음). 동시에 대기업은 실제로 오픈 소스 프로젝트를 채택하고 관련성을 높이는 것에 신경 쓰지 않습니다.

  • Git은 엔터프라이즈 환경, 특히 Windows 플랫폼에서 신뢰할 수있는 도구입니까?
  • 오픈 소스 제품이므로 Git에 대한 지원이 문제입니다.
  • 솔루션과 지원을 제공하는 회사가 있습니까? Clear-case와 같은 다른 버전 관리와 비교하여 서버 비용은 어떻게됩니까?

2
Google이 git을 채택했다는 것을 알지 못하지만 머큐리얼을 선택했습니다. 그리고 다른 대기업들도 저를 설득해야 할 것입니다. 예가 있습니까?
Benjol

4
훌륭한 GUI 지원이 있습니다. 좋은 운영 체제를 선택하십시오.

2
@Benjol-이 글에서 약간의 통찰력을 얻을 수 있습니다. quora.com/…
sarat

1
@sarat, Twitter는 많은 돈을 쓸 가치가 있다는 것을 알고 있지만 대기업이나 기업으로 분류하지는 않습니다. // code.google.com지원되는 git을 알지 못했고 , 그것은 매우 새로운 소식 이며, 다른 버전 컨트롤 보다 git을 채택한다고 말할 수는 없습니다 . [원래] ( code.google.com/p/support/wiki/DVCSAnalysis) , 그들은 git에 대한 Mercurial을 결정했습니다
Benjol

@Benjol 일반적으로 말할 수는 없지만 공개 구아바 저장소 는 git으로 이동했습니다 .
maaartinus

답변:


37

GitHub는 버전 관리가 아니며 "Git"이라는 버전 관리 시스템을 "호스트"합니다. 말장난 외에, 이것은 매우 중요한 차이점입니다. 잘 알고 있습니다.

엔터프라이즈 사용과 관련하여 git이 SVN과 같이 똑똑하고 편리하고 우수하다는 것을 알 수 있습니다. 또한 프로젝트 (및 팀)의 규모와 범위에 따라 적절한 버전 관리 전략 (워크 플로)을 선택할 수 있습니다. 비 분산 시스템은 이러한 유연성을 제공 할 수 없습니다.

여기에 이미지 설명을 입력하십시오

Windows의 경우 Git 용 Msysgit 또는 Visual Studio Extensions를 확인하십시오 .git 은 Windows에서 매우 잘 작동합니다. 또한 Windows 사용자 는 TekPub 에서이 교육 시리즈 를 봅니다. 모두 Windows입니다.

업데이트 [Feb 2013] Visual Studio에서 git 시작하기

귀하의 질문은 드문 일이 아니며 Google에 대해 Google에서 엔터프라이즈에서 git을 사용하는 이유와 방법 (및 여부)을 설명하는 많은 텍스트를 얻을 수 있습니다.

아직도 Git을 좋아하지 않습니까? Mercurial 이라는 다른 DVCS를보십시오 .


12
Msysgit은 진정한 Windows 시민이 아닙니다. 훌륭하게 작동하지만 100 % 네이티브가 아닙니다.
Yann Ramin

힘내에 대한 몇 가지 중요한 측면을 지적하면 +1. @greengit은 Windows에서 Git을 사용할 수있는 옵션을 지적했지만 SVN과 같이 통합되지는 않았습니다.
tehnyit

우리는 좋은 자식 지원을 얻은 이클립스를 사용합니다.

1
나는 gitolite (또는 이와 유사한)에 대해 언급 할 가치가 있다고 생각합니다. 로컬, 폐쇄 및 리포지토리를 로컬로 호스팅하는 제어 옵션과 같은 많은 보안 담당자가 있습니다.
Nic

2
@YannRamin : Msysgit은 확실히 진정한 Windows 시민이며 100 % 네이티브입니다. 약간 다른 규칙을 사용하는 유닉스 쉘이 제공되지만 git이 아닌 쉘입니다. cmd.exe 또는 다른 모든 Windows 프로세스에서 Msysgit을 다른 기본 응용 프로그램처럼 사용할 수 있습니다. (Cygwin은 다르지만 Msys는 cygwin이 아닙니다)
Jan Hudec

16

머큐리얼 +1

Mercurial은 시원하고 쉬우 며 사용자 친화적 인 GUI가 많으며 전문적인 느낌을줍니다. 나는 Git이 왜 과대 광고를했는지 이해하지 못했지만 다른 위대한 사람들은 그림자에 있습니다. Mercurial은 Google 코드 인 bitbucket.org (github와 동일), 일식도 지원합니다 .2 년 이래로 사용했으며 항상 행복했습니다.

2014 년 2 월 편집 :

그동안 Git은 수은에 대한 조언을 할 수있는 주도권을 잡았습니다. 3 년 전, Mercurial은 IMHO가 더 세련되고 깨끗하며 개선되었습니다. 그러나 과대 광고는 Git 측에 있었고 그 이후로 얻은 모멘텀은 확실한 승자가되었습니다. 이제는 거대한 커뮤니티 때문에 사실상의 표준입니다.


힘내는 역사를 조작하는 방법에있어서 훨씬 더 강력합니다. 많은 사람들이 지점을 로컬로 병합 한 다음 메인 / 공개 리포지토리로 푸시하기 전에 단일 메인 라인 지점으로 리베이스합니다. 그런 식으로 장기 역사는 매우 깨끗합니다. 내가 HG를 사용한 마지막 시간을 알 수있는 한, Mercurial은 이러한 유형의 기록 편집을 지원하지 않습니다. 일반적으로 Windows의 자식은 짜증납니다. 그것을 사용하는 최고의 GUI 도구 (git-cola, gitk)는 Linux에서만 찾을 수 있습니다.
Evan Plaice

1
마지막으로 확인했을 때 Mercurial의 백엔드 형식은 델타 기반이며 SVN 또는 CVS와 같은 부패가 발생하기 쉽습니다. 한편 Git의 기본 모델은 대부분 원자 변경으로 쓰기 전용입니다. 훨씬 기술적으로 건전한 솔루션 일뿐입니다.
스튜어트 P. 벤틀리

@ StuartP.Bentley : 부패의 의미는 무엇입니까?
dagnelies

디스크 나 네트워크에서 복사, 이동, 쓰기 도중에 프로세스가 갑자기 중지됩니다. 중간에 무언가를 잃어버린 경우, 무엇을 얻었는지 확인하고 거기에서 물건을 다시 모을 수 있습니다.
스튜어트 P. 벤틀리

한편, Mercurial과 같이 단일 파일의 변경 사항에 대한 모든 정보를 유지하는 델타 기반 형식은 Humpty Dumpty와 같은 방식으로 파일을 손상시키는 경미한 사고 (예 : 변경 사항을 나타내는 줄 삭제)가 발생할 수 있습니다. 다시 합치는 것은 불가능합니다.
스튜어트 P. 벤틀리

8

https://github.com/ 은 엔터프라이즈의 개인 저장소와 관련하여 약간의 지원을 제공한다는 것을 알고 있습니다.

특히 그들은 방화벽 설치라는 서비스를 제공합니다 http://fi.github.com/ 그들은 지원을 제공한다고 주장하지만 온라인에 게시 된 세부 정보는 없으며 결코 사용하지 않았습니다.

비용은 연간 20 명당 5000 $입니다.


-1은 그의 질문에 전혀 답하지 않습니다
MattyD

13
그는 솔루션과 지원을 제공하는 회사를 요청했습니다. Github에는 회사를위한 특정 엔터프라이즈 git 호스팅 솔루션이 있습니다. 첫 번째 질문에는 답하지 않습니다. 그것은 두 번째 질문에 대한 답변입니다. 세 번째 질문에 대한 답변입니다.
c00w

와우, FI의 가격은 언제 바뀌 었습니까? 마지막으로 확인한 것은 200-250 $ / mo와
같았고 이제는

8

Windows에서 Git과 Mercurial을 모두 사용하며 둘 다 사용할 수 있습니다. Mercurial 용 GUI 도구가 더 좋다고 생각하므로 팀이 시각적 도구에 익숙하다면 더 적합 할 수 있습니다. 나는 커맨드 라인을 사용하는 경향이 있습니다-나에게는 더 이해가됩니다.

내 경험상 둘 다 방탄입니다. 나는 많은 기업이 그것을 좋아한다는 것을 알고 있지만 '지원'은 필요하지 않습니다.

나는 다른 것들이 있다고 확신하지만 호스팅 된 수은 솔루션 인 Kiln을 살펴볼 가치가 있습니다.

DVCS는 어떤 방식으로 이동하든 기존 VCS와는 매우 다릅니다. IMHO, 그들은 거의 모든면에서 우수하지만 익숙해지기까지 시간이 걸릴 수 있습니다.


2
익숙해지는 데 시간이 걸릴 수 있습니다. // SVN에서 긴 이틀 동안 적응 한 동안 Git을 얼마나 싫어했는지 기억합니다.
c69

6

git은 Windows 개발자에게는 외국어입니다. 진정한 일류 시민이 아닙니다. 잘 작동하지만 가장 먼저 Linux 도구입니다. 예를 들어, git의 서버 모델에는 보안을 위해 SSH 로그인이 거의 필요합니다.

지원은 문제이며 일반적으로 호스팅 된 솔루션과 함께 제공 할 수있는 회사가 있습니다.

Git은 거대한 서버를 필요로하지 않는 것으로 알려져 있습니다. 리포지토리는 더 많은 io 용량과 속도가 항상 중요하기 때문에 대부분의 작업은 컴퓨터에서만 이루어 지므로 서버 요구 사항은 Clearcase와 같은 수준입니다.

그 가치가 100에 불과한 우리의 엔터프라이즈 회사는 Java 및 C 프로젝트를 사용하는 Windows의 git 사용자입니다.


1
문서를 작성하는 데 많은 어려움을 겪었지만 GIT는 LDAP 서버가 지원하는 SSL을 통한 HTTP 기본 인증과 매우 잘 작동합니다.
DoubleMalt

1
Linux로 무엇이든 이식하려는 경우 공백 / 줄 끝을주의하십시오. 처음부터 경계하지 않으면 추악해질 수 있습니다.
Evan Plaice

Git은 이제 VS 2013 이상에 내장되어 있습니다. MS는이를 일류 시민으로 만들었습니다.
Clay Smith

5

Git은 Clearcase와는 매우 다르기 때문에 개발자와 다른 사용자를 소스 코드 및 파일을 사용하는 다른 방법으로 원활하게 마이그레이션하는 방법이 아마 어려울 것입니다. 사용자 경험과 기업에 Clearcase가 얼마나 깊이 통합되어 있는지에 따라 많은 교육과 학습이 필요할 수 있습니다.

내 제안은 처음에는 파일럿 프로젝트에서 자식을 시도하고 팀에 어떻게 작동하는지 확인하는 것입니다. github에서 안전한 저장소를 얻으면 모두 파일럿으로 설정됩니다.


5
  • Git은 엔터프라이즈 환경, 특히 Windows 플랫폼을위한 신뢰할 수있는 도구입니까?

우리는 곧 이것으로 강한 예가 될 것입니다. Atlassian은 최근 Stash 1.3을 출시하면서이를 달성하기 위해 큰 발걸음을 내딛었습니다 .

  • 지원은 오픈 소스 버전 제어이므로 Git에 대한 질문입니다.

무료 및 다양한 LinkedIn 그룹 (Git Version Control System)에 대한 조언을 제공하는 지식이 풍부한 Git 사용자로 구성된 강력한 지원 네트워크가 있습니다. 빠른 Google 검색은 일반적으로 대부분의 요구 사항에 도움이 될 수 있습니다. 대기업의 경우 현재 시장에서 상용 git 지원 옵션을 사용할 수 있습니다.

  • 솔루션과 지원을 제공하는 회사가 있습니까? Clear-case와 같은 다른 버전 관리와 비교하여 서버 비용은 어떻게됩니까?

현재 Git에 대한 신뢰할 수 있고 헌신적 인 지원을 제공하는 많은 회사가 있습니다. Clearvision 및 #goGit 중 하나를 지정하십시오.


Stash 링크는 1 년 반 후에 끊어졌습니다. 여기에서 찾았습니다 : atlassian.com/software/stash

1

저는 회사의 직장에서 ClearCase의 팀을 Mercurial (git과 유사한 도구)로 데려 오는 작업을 지원하고 있습니다.

우리는 비즈니스 목표에 중요한 불변성을 중심으로 설계된 hg를 선택했습니다. 또한 파이썬으로 작성되었으므로 Windows에서 매우 잘 작동합니다. Git은 Windows에서 약한 소스로 명성을 얻었으며 내 경험에 반영되었습니다. (지금은 도구가 더 나아 졌다는 것을 알기 때문에 더 이상 Windows를 사용하여 확인하지 않습니다. :-)).

경험은 일반적으로 긍정적이며, 대부분의 하위 단점은 하위 저장소와 관련이 있으며 이상한 간접 지시는 관련되어 있습니다. 또 다른 것은 메타 데이터 스토리지가 hg에 존재하지 않는다는 것입니다. 이를 관리하기 위해 다른 솔루션을 개발해야합니다.

Windows 개발자를위한 "즉시"작업을위한 엔터프라이즈 솔루션을 추천하려면 KilnGitHub Firewall을 조사하는 것이 좋습니다 .

귀하의 질문에 직접 답변하지는 않습니다. 그러나 ClearCase에 익숙하다면 git이 훈련, 구현 및 관리하기가 훨씬 쉬울 것으로 기대합니다.


1

Git 및 Mercurial은 엔터프라이즈 환경에서 사용할 수 있습니다. 어느 정도는. 일부 조직은 현재 git에 의해 충족되지 않는 추가 요구 사항을 가지고 있습니다. 엄격한 액세스 제어와 같은 것입니다. 즉, 특정 사용자 만 리포지토리의 특정 파일에 액세스하거나 액세스를 추적 할 수있는 감사 인터페이스와 같은 액세스 권한을 갖습니다. 일부 상용 엔터프라이즈 시스템은 회사 백업 솔루션과 같은 IT 시스템 관리와보다 긴밀하게 통합되어 있습니다.

힘내도 역사를 지키는 데 좋지 않습니다. 기본적으로 강제 푸시로 프로젝트의 전체 역사를 덮어 쓸 수 있습니다.

대기업은 때때로 규모 문제에 부딪칩니다. Facebook에있는 사례는 다음과 같습니다. http://comments.gmane.org/gmane.comp.version-control.git/189776 , 이러한 문제 중 일부는 해결할 수 있습니다 (예 : Facebook은 수은에서 발생한 일부 문제를 해결했습니다 : https : / /code.facebook.com/posts/218678814984400/scaling-mercurial-at-facebook/ ) 상용 버전 제어 시스템에는 다른 스케일링 동작이있어 다른 환경에서는 더 잘 작동하지 않을 수 있습니다.

...이 책임이 있습니다. 대규모 조직에서는 시간을 사용하여 문제를 디버깅하고 커뮤니티 지원에 의존하는 대신 문제가있는 경우 외부 공급 업체에 전화하는 것을 선호 할 수 있습니다. 특히 기밀 정보가있는 손상된 저장소가 관련된 경우.

이것들은 결코 "엔터프라이즈 환경"에서 사용할 수 없게 만드는 문제는 아니지만 항상 다른 소프트웨어는 서로 다른 장단점이 있으며 사례별로 평가해야합니다.

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