나는 현재 데비안 패키지가 없는 제3자 프로그램을 기반으로 새로운 데비안풍 패키지를 만들려고 합니다(주로 개인용이지만 GitHub에 게시하는 것을 고려하고 있습니다).
모든 기본 사항을 정리했지만(패키지를 빌드하고 작동함) 이를 사용하여 git 저장소를 만들려고 할 때 몇 가지 문제에 부딪혔습니다.
한번은 git-buildpackage
내 빌드에서 저장소를 만들고 .dsc
기본 빌드 옵션을 사용한 적이 있는데 제대로 작동했습니다. 이제 pbuilder를 사용하여 확장된 온전성 검사를 수행하려고 하는데 파일에 문제가 있습니다 README.md
.
파일은 업스트림에서 제공되지 않습니다 README.md
. GitHub를 탐색하는 사람들이 해당 정보를 자동으로 볼 수 있도록 내 저장소 루트에 하나를 두고 싶습니다.
dpkg-source
파일만 추가하고 패치를 추가하지 않으면 화가 납니다 debian/patches
.
git-buildpackage
그러나 git 저장소(적어도 git 저장소와 함께 )를 사용하는 권장 방법은 마스터 브랜치에 패치가 미리 적용되지 않도록 하는 것입니다(이는 중복될 수 있으므로 의미가 있습니다. 특히 이런 방식으로 적용된 패치는 다음과 같습니다). 하위 디렉터리를 통해 추적 .pc
) - 그러나 모든 패치를 적용 취소하면 파일이 README.md
사라져 이를 위반합니다.
debian/source/options
이제 다음을 포함하는 파일 을 추가했습니다 .
extend-diff-ignore="README\.md$"
그리고 파일을 생성한 패치는 포함되지 않습니다. 이는 두 가지 목표를 모두 달성합니다(마스터는 패치되지 않은 소스이지만 파일을 포함하고 README.md
빌드 dpkg-source
중에 이에 대해 화를 내지 않습니다). 단점은 이 파일이 생성된 소스 패키지( orig.tar.gz
및 ) 파일 debian.tar.xz
의 어디에도 나타나지 않는다는 것입니다.
파일이 그다지 흥미롭지 않기 때문에(주로 git에서 파일을 빌드하는 방법에 대한 설명과 일부 지침) 이를 받아들일 수 있지만 이는 Git 저장소가 소스 패키지와 "다르다"는 의미입니다. 이것이 옳은 일입니까? 더 좋은 방법이 있나요?