나는 개인 프로젝트에 git을 사용하며 훌륭하다고 생각합니다. 빠르고 유연하며 강력하며 원격 개발에 적합합니다.
하지만 지금은 직장에서 의무화되어 있으며 솔직히 문제가 있습니다.
기본적으로 git은 다양한 능력과 수준의 git 정교함을 가진 개발자가있는 대규모 (20 명 이상의 개발자) 조직에서 중앙 집중식 개발에 적합하지 않은 것 같습니다. 특히 Perforce 또는 Subversion과 같은 다른 소스 제어 시스템과 비교하면 그런 환경을 겨냥하고 있습니다. (예, 알아요. Linus는 그것을 의도하지 않았습니다.)
하지만-정치적 이유로-우리가하려는 일이 싫더라도 git과 붙어 있습니다.
다음은 우리가보고있는 몇 가지 사항입니다.
- GUI 도구는 성숙하지 않았습니다.
- 명령 줄 도구를 사용하면 병합을 망칠 수 있고 다른 사람의 변경 사항을 지울 수 있습니다.
- 전역 읽기 전용 또는 읽기-쓰기 권한 이상의 사용자 별 저장소 권한을 제공하지 않습니다.
- 저장소의 모든 부분에 대한 권한이있는 경우 저장소의 모든 부분에 대해 동일한 작업을 수행 할 수 있으므로 다른 사람이 할 수없는 중앙 서버에 소규모 그룹 추적 분기를 만드는 것과 같은 작업을 수행 할 수 없습니다. 엉망입니다.
- "무엇이든 간다"또는 "자비로운 독재자"이외의 워크 플로우는 시행은 말할 것도없고 장려하기 어렵습니다.
- 하나의 큰 저장소 (모든 사람이 모든 것을 엉망으로 만들 수 있음)를 사용하는 것이 더 나은지 또는 많은 구성 요소 별 저장소 (버전 동기화를 시도하는 데 골칫거리가 됨)를 사용하는 것이 더 나은지 여부는 명확하지 않습니다.
- 여러 저장소를 사용하는 경우 다른 사람이 중앙 저장소에서 가져 와서 가지고있는 모든 소스를 복제하거나 어제 오후 4시 30 분에 모든 것을 가져 오는 것과 같은 작업을 수행하는 방법도 명확하지 않습니다.
그러나 사람들이 대규모 개발 조직에서 git을 성공적으로 사용하고 있다고 들었습니다.
그러한 상황에 처해 있거나 일반적으로 명령 줄 팬이 아닌 대규모 조직에서 git을 더 쉽고 생산적으로 사용할 수있는 도구, 팁 및 트릭이있는 경우-당신이 가진 것을 듣고 싶습니다. 제안합니다.
BTW, 나는 이미 LinkedIn에서이 질문의 버전을 요청했지만 실제 답변은 없지만 "이런, 저도 알고 싶습니다!"
업데이트 : 명확히하겠습니다 ...
내가 일하는 곳에서는 git 이외의 것을 사용할 수 없습니다 . 옵션이 아닙니다. 우리는 그것에 붙어 있습니다. 우리는 mercurial, svn, bitkeeper, Visual Source Safe, ClearCase, PVCS, SCCS, RCS, bazaar, Darcs, monotone, Perforce, Fossil, AccuRev, CVS 또는 1987 년에 사용했던 Apple의 좋은 프로젝터를 사용할 수 없습니다. 따라서 다른 옵션에 대해 논의하는 것은 환영하지만 git에 대해 논의하지 않으면 현상금을받을 수 없습니다.
또한 기업에서 git을 사용하는 방법에 대한 실용적인 팁을 찾고 있습니다 . 이 질문의 맨 위에 우리가 겪고있는 문제의 전체 세탁 목록을 넣었습니다. 다시 말하지만 사람들은 이론에 대해 토론 할 수 있습니다. 하지만 현상금을 받고 싶다면 해결책을주세요.
a process
... (나는 그 단어가 싫다)