Perforce Helix에서 이전하기

Tier: Free, Premium, Ultimate Offering: GitLab.com, Self-Managed, GitLab Dedicated

Perforce Helix은 Git과 유사한 중앙 집중식의 전용 버전 관리 시스템을 포함한 일련의 도구를 제공합니다.

Perforce 대 Git

다음 목록은 Perforce Helix와 Git의 주요 차이점을 보여줍니다.

  • 일반적으로, Perforce 브랜칭은 Git의 가볍고 효율적인 브랜칭과는 대조적으로 무겁습니다. Perforce에서 브랜치를 만들면 해당 브랜치에 속한 모든 파일에 대한 통합 레코드가 생성되는데, 실제 변경된 파일 수에 상관없이 모두 생성됩니다. 그러나 Git에서는 단일 SHA가 변경 후 저장소 전체 상태를 가리키므로 이것은 기능 브랜칭 워크플로를 채택할 때 유용할 수 있습니다.
  • Git에서 브랜치 간의 컨텍스트 전환이 덜 복잡합니다. 만약 당신의 매니저가 “새로운 기능을 중단하고 이 보안 취약점을 고쳐야 한다”고 말한다면, Git은 여러분을 도울 수 있습니다.
  • 로컬 컴퓨터에 프로젝트와 이력의 완전한 사본을 가지고 있다는 것은 모든 트랜잭션이 매우 빠르다는 것을 의미하고, Git은 이를 제공합니다. Git에서는 브랜치를 만들고 병합하고, 격리된 곳에서 실험한 후 변경 사항을 다른 사람과 공유하기 전에 정리할 수 있습니다.
  • Git은 코드 리뷰를 덜 복잡하게 만들어 줍니다. 변경 사항을 기본 브랜치에 병합하지 않고도 변경 사항을 공유할 수 있습니다. 이는 다른 사람이 병합하기 전에 변경 사항을 검토할 수 있도록 Perforce가 서버에 Shelving 기능을 구현해야 했던 것과 비교됩니다.

이주하는 이유

Perforce Helix는 사용자 및 관리자 관점 모두에서 관리하기 어려울 수 있습니다. Git/GitLab로의 이주시 다음과 같은 이점이 있습니다:

  • 라이선싱 비용 무료: Git은 GPL이지만 Perforce Helix는 전용입니다.
  • 학습 곡선이 짧음: Git은 큰 커뮤니티와 다양한 튜토리얼로 시작할 수 있습니다.
  • 현대적인 도구와 통합: Git 및 GitLab으로의 이주로 오픈 소스 엔드 투 엔드 소프트웨어 개발 플랫폼을 얻을 수 있으며, 버전 관리, 이슈 추적, 코드 검토, CI/CD 등이 내장되어 있습니다.

어떻게 이주하는가

Git에는 Perforce에서 코드를 가져오고 Git에서 다시 Perforce로 제출하는 내장 메커니즘이 포함되어 있습니다(git p4).

다음 링크를 통해 시작해 보세요:

git p4git filter-branch는 작고 효율적인 Git 팩 파일을 만드는 데 매우 적합하지 않습니다. 따라서 GitLab 서버로 처음 보내기 전에 저장소를 적절하게 재패킹하려면 시간과 CPU를 소비하는 것이 좋은 아이디어일 수 있습니다. 이 StackOverflow 질문을 참조하세요.

관련 주제