The way I'd love to see this implemented is by having an option, say in the Builder tab, for Build Number Scheme. The default scheme would be the current integer-based scheme. However, Atlassian could provide additional schemes, say for Perforce and Subversion builds. These schemes would have well-defined, documented rules for how the next build number is assigned.
In addition, it would be great if a custom numbering scheme could be defined. The custom numbering scheme would define a starting build number and a rule for how to increment the number for a manual build. Perhaps this could be implemented by allowing users to implement an Atlassian-defined Java class and creating their own methods for nextBuild() and previousBuild(). Ideally, this class would allow access to the metadata for the previous build because the next build number may be dependent on values used in the prior build. If the user selected a custom scheme, they'd provide the name of a jar file that they previously copied to the WEB-INF/lib directory.
Any alphanumeric value (including symbols) for build number should be allowed.
This would provide the flexibility necessary to support any numbering scheme. Atlassian could add to the list of supported schemes over time, while still allowing users to create their own schemes.
In addition, and this should probably be defined in a separate JIRA, it would be nice to have a separate Build Action, in addition to Run Build, named Run Build With Parameters. If selecting this option, the user would have the ability to specify a specific the build number, and, potentially, some other property values.
A lot of functionality in Bamboo relies on it's sequential Build numbers. Implementing this change would require a major development effort for an arguably small improvement. Additionally, with DVCS becoming more popular, revision numbers will become less relevant as a reference.
As a workaround we could make the revision number more prominent in the Bamboo interface. However, if you would like to go one step further, it wouldn't be too hard to write a plugin using Web Resources[1] and the Build Result Service[2] to substitute the build number with the revision number using JavaScript.
Since we are unlikely to implement this feature, I will close this ticket. Please let me know if you have any questions, comments or concerns.
Cheers,
Jens
[1] http://confluence.atlassian.com/display/BAMBOO/Web+Resources
[2] http://confluence.atlassian.com/display/BAMBOO/Build+Results+Services