У нас есть git-репозиторий, содержащий исходные тексты для нескольких связанных Java WAR-ов и JAR-файлов. Было бы хорошо, если бы код Java мог как-то:
System.err.println("I was built from git commit " + commitID);
(Очевидно, что реальный код может помещать это в заголовок HTTP, регистрировать его при запуске или что-то еще, что сейчас не важно)
Мы используем Ant для сборки (по крайней мере, для производственных сборок, кажется, что некоторые программисты проводят тестирование из Eclipse, о котором я знаю даже меньше).
Есть ли канонический способ получить идентификатор фиксации для текущей проверки git в нашу Java во время сборки? Если нет, могут ли люди, использующие Ant для сборки, предложить, как они это сделают, и мы увидим, появится ли каноническое решение? Я уверен, что могу сам что-нибудь придумать из цельной ткани, но это похоже на многократно используемый строительный блок, поэтому я бы предпочел этого не делать.