내 궁극적 인 목표는 MSBuild 사전 빌드 이벤트에서 분기 이름 ($ SolutionDirectory의 일부)을 추출한 다음 내 app.config appSettings에 주입하는 것입니다.MSBuild 사전 빌드 단계의 분기 이름 추출
나는 많은 파기를 해오 고 있으며이 문제에 대한 접근법을 실제로 발견하지 못했습니다.
나는 사전 빌드하는 동안 이런 일을 할 수 있도록하고 싶습니다 :
<XmlPoke XmlInputPath="App.config"
Query="/configuration/appSettings/add[@key='BuildBranch']/@value"
Value="$(Branch)" />
사람이 이전에 같은 짓을 했습니까?
흠, 이것에 대해 살펴 봐야 할 것입니다. 이것이 저에게 효과가 있다면, 그곳으로가는 길의 50 %를 얻을 수 있습니다. 브랜치 사이를 전환 할 때 브랜치 이름을 동적으로 가져 오는 방법이 필요합니다. – Anthony
실지로 이것을 시도해 볼 수는 없지만, 미리 빌드 이벤트에서 배치 파일을 실행하고 msbuild 속성으로 해당 파일의 출력을 전달하여 작업에서 사용하도록 할 수 있습니다. 그 박쥐 파일 안에 git 명령을 실행할 수 있습니다 : git rev-parse --abbrev-ref HEAD (이 명령은 현재 브랜치를 줄 것입니다) 그리고 출력으로 에코합니다. 그러면 아마 그 출력을 처리하고 나중에 사용할 수있는 방법이있을 것입니다. – luki
배치 파일이 필요하지 않습니다. Exec을 사용하여 git을 실행하면 (현재 디렉토리에 의존하지 않고 --git-dir과 --work-tree를 지정하는 것이 가장 좋습니다) 출력을 얻습니다. – stijn