문제

직장에서 인프라를 SVN 대신 GIT를 사용하도록 변환하고 있습니다. 전반적인 마이그레이션은 잘 진행되고 있지만 SQL 스키마 마이그레이션을 수행하기 위해 개발 한 도구가 있습니다.

개별 스키마 변경 종속성을 처리하기 위해 마이그레이션 스크립트는 전복 키워드 교체를 사용하여 스키마에 마지막으로 변화 된 개정 번호를 넣었습니다. GIT를 사용하면 개정 내역이 비선형이기 때문에 동일한 아이디어를 사용할 수 없습니다 (그리고 우리는 분기 기능을 완전히 활용하려고합니다).

따라서 GIT에서 토폴로지 정렬 된 커밋 ID 목록을 어떻게 얻습니까? 이 문제를 처리하는 방법에 대한 더 나은 아이디어가있는 사람이 있습니까?

도움이 되었습니까?

해결책

git rev-list old-revision..new-revision

그것은 최신 우선을 보여줍니다. 가장 오래된 우선을 원한다면 추가하십시오 --reverse

다른 팁

소스 코드 저장소에서 파일이 어디에서 왔는지 추적하는 방법을 원한다면 조사 할 수 있습니다. 태깅 당신의 작업과 파일을 태그로 표시 할 수있는 방법을 찾습니다. 이 중 일부는 실제 배포 프로세스에 따라 다르지만 짧은 대답은 SVN 키워드를 태그 기반 메커니즘으로 바꾸는 것입니다. (실제로 SVN에서했던 일이었을 수도 있습니다.)

여기에 언급 된 "스무지 필터"를 들었지만 직접 사용하지 않았으므로 여기에 어떻게 적합한 지 추측 할 수 없습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top