소스 제어 관리 (SCM)
소스 제어 관리(SCM)는 프로젝트의 서브 버전 또는 백업을 저장소와 로컬 소스를 통해 작업하는 방법을 의미합니다. 기본적으로 SCM 솔루션은 프로젝트의 버전을 유지하고 변경하며 비교하는 모든 측면을 제어하는 독립적인 소프트웨어 패키지입니다. 이는 팀으로 작업하는 사람들에게 특히 유용하며, 누가 어떤 작업을 수행하는지 제어하고 데이터 손실이나 나중에 되돌려야 할 수 있는 변경 사항에 대한 걱정을 덜 수 있습니다. 개인 사용자도 이 강력하면서도 유연한 시스템의 혜택을 누릴 수 있습니다.
GameMaker는 SCM을 위해 Git을 사용하며, SCM을 사용하기 전에 Git을 별도로 설치하고 설정해야 합니다. Git에 대한 보다 구체적인 정보는 Git 문서를 참조하십시오. 아래에는 이 플러그인을 설정하고 프로젝트와 함께 SCM 도구를 사용하는 방법에 대한 간단한 튜토리얼 링크가 있습니다. GameMaker에서 SCM을 사용하기 전에 소스 제어가 어떻게 작동하는지에 대한 기본적인 지식이 필요합니다.
Git 플러그인 설정
옵션 | 설명 |
---|---|
프로젝트 저장소 생성 | 프로젝트 파일과 동일한 디렉토리에 로컬 저장소를 생성합니다. |
저장소 복제 | 소스에서 새로운 목적지로 저장소를 복제합니다. |
변경 사항 커밋 | 프로젝트에서 변경된 파일을 스테이징하고 저장소에 커밋합니다. |
변경 사항 푸시 | 커밋 또는 병합 후 변경 사항을 마스터 저장소에 푸시합니다. |
변경 사항 가져오기 | 마스터 저장소에서 변경된 파일을 가져와 로컬 저장소를 업데이트합니다. |
기록 보기 | 프로젝트의 모든 버전 기록을 보고 특정 파일 경로나 전체 수정 사항을 롤백할 수 있습니다. |
충돌 표시 | 충돌이 발생한 파일 목록을 보여주고 GameMaker IDE 또는 특정 병합 도구를 통해 처리할 수 있습니다. |
활용 예제
1. 프로젝트 저장소 생성
// 프로젝트 저장소를 생성하는 코드
var repo_path = "C:/MyGameProject";
CreateProjectRepository(repo_path);
2. 저장소 복제
// 기존 저장소를 복제하는 코드
var source_repo = "https://github.com/user/repo.git";
var destination = "C:/MyClonedProject";
CloneRepository(source_repo, destination);
3. 변경 사항 커밋
// 변경된 파일을 커밋하는 코드
CommitChanges("Updated player movement logic");
4. 변경 사항 푸시
// 변경 사항을 마스터 저장소에 푸시하는 코드
PushChanges();
5. 변경 사항 가져오기
// 마스터 저장소에서 변경 사항을 가져오는 코드
PullChanges();
6. 기록 보기
// 프로젝트의 버전 기록을 보는 코드
ViewHistory();
7. 충돌 표시
// 충돌이 발생한 파일을 표시하는 코드
ShowConflicts();
이러한 예제들은 GameMaker에서 SCM을 활용하는 방법을 보여줍니다. 각 기능을 적절히 사용하여 프로젝트의 버전 관리를 효율적으로 수행할 수 있습니다.