parent
8bcb21d7ad
commit
c6d6abddf6
Binary file not shown.
@ -0,0 +1,203 @@
|
|||||||
|
VCB Command-line Utility ver. 3.2
|
||||||
|
|
||||||
|
NOTE: Implementation details and latest version of the tool can be found at
|
||||||
|
http://www.codeproject.com/KB/macros/versioningcontrolledbuild.aspx
|
||||||
|
|
||||||
|
AutoVer.exe is a command-line utility that provides functionality
|
||||||
|
similar to VCB Add-in - it automates versioning of projects in
|
||||||
|
solutions.
|
||||||
|
|
||||||
|
Supported workspaces/solutions:
|
||||||
|
- Visual C++ 6.0 workspaces (.dsw files)
|
||||||
|
- Visual Studio 2002 solutions (.sln files)
|
||||||
|
- Visual Studio 2003 solutions (.sln files)
|
||||||
|
- Visual Studio 2005 solutions (.sln files)
|
||||||
|
- Visual Studio 2008 solutions (.sln files)
|
||||||
|
- Visual Studio 2010 solutions (.sln files)
|
||||||
|
|
||||||
|
The tool extracts version information (AssemblyVersion,
|
||||||
|
AssemblyInformationalVersion and AssemblyFileVersion for .NET projects or
|
||||||
|
ProductVersion and FileVersion for VC++ projects) and increments versions
|
||||||
|
according to settings in configuration file or according to command-line
|
||||||
|
switches that override some settings in configuration file. Configuration file
|
||||||
|
is stored in
|
||||||
|
Application Data\Versioning Controlled Build
|
||||||
|
folder of user's profile and can be modified by Configurator program.
|
||||||
|
|
||||||
|
Basic Syntax:
|
||||||
|
|
||||||
|
AUTOVER /?
|
||||||
|
AUTOVER [solution] /G
|
||||||
|
AUTOVER [solution [version]] [/P:projects] [/C:(E|W)] [/A:(A|M)]
|
||||||
|
[/V:(*|[A][F][P|I])] [/S:(S|I|N)] [/M:([C][F["filename"]]|N)]
|
||||||
|
[/U:(username[,password])]
|
||||||
|
|
||||||
|
/? Displays command help.
|
||||||
|
|
||||||
|
solution Solution file (.SLN or .DSW) for which versions should be updated.
|
||||||
|
If solution file is omitted, "Open Solution File" dialog pops-up
|
||||||
|
allowing user to select the file.
|
||||||
|
|
||||||
|
/G Starts GUI form with a list of all projects.
|
||||||
|
NOTE: This switch should not be used with any other switch.
|
||||||
|
|
||||||
|
Examples:
|
||||||
|
AUTOVER /G
|
||||||
|
AUTOVER /G "C:\My Projects\My Solution.sln"
|
||||||
|
AUTOVER "C:\My Projects\My Solution.sln" /G
|
||||||
|
|
||||||
|
version Version pattern to be applied. Version pattern is a sequence of
|
||||||
|
four dot separated version components: Major, Minor, Build and
|
||||||
|
Revision. Each component may contain number (optionally preceded by
|
||||||
|
'+' character) or '*' character:
|
||||||
|
'*' character leaves corresponding version component unchanged,
|
||||||
|
'+' character increments it by amount specified.
|
||||||
|
For example, version pattern "1.2.*.+2" sets Major version to 1
|
||||||
|
and Minor to 2, leaves Build unchanged and increments Revision by
|
||||||
|
2.
|
||||||
|
If version is omitted, versions are incremented by the scheme
|
||||||
|
stored in the configuration file. If configuration file does not
|
||||||
|
exist, Revision will be incremented by 1.
|
||||||
|
If configured so, user may enter arbitrary version (e.g. "beta 1")
|
||||||
|
but can apply it to AssemblyInformationalVersion only (using /V:I
|
||||||
|
or /V:I switch).However such a version will not be applied to
|
||||||
|
ProductVersion of VC++ projects.
|
||||||
|
Arbitrary version must not contain a dot character.
|
||||||
|
NOTE: version pattern cannot be applied in combination with /S
|
||||||
|
switch.
|
||||||
|
|
||||||
|
Examples:
|
||||||
|
AUTOVER "C:\My Projects\My Solution.sln" "1.0.0.1"
|
||||||
|
AUTOVER "C:\My Projects\My Solution.sln" "1.+1,*.*"
|
||||||
|
AUTOVER "C:\My Projects\My Solution.sln" "beta2" /V:I
|
||||||
|
|
||||||
|
/P Specifications for individual projects as defined in the list
|
||||||
|
supplied with this switch. If this switch is omitted, all projects
|
||||||
|
in solution are considered, according to settings in configuration
|
||||||
|
file.
|
||||||
|
|
||||||
|
projects List of comma separated project names. Each project name may be
|
||||||
|
prefixed by:
|
||||||
|
+ (optional) include project into the list of projects for
|
||||||
|
which version may be modified;
|
||||||
|
- exclude project from the list of projects for which version
|
||||||
|
may be modified (complement to + prefix);
|
||||||
|
! include project into list of projects for which version is
|
||||||
|
always modified.
|
||||||
|
If a project name contains whitespace, you should enclose it with
|
||||||
|
double quotes. Same applies for the case when project name starts
|
||||||
|
with one of prefix characters.
|
||||||
|
NOTE: Version of project that may be versioned will be modified
|
||||||
|
only if other criteria apply (e.g. project modification has been
|
||||||
|
detected or /A:A switch has been set).
|
||||||
|
NOTE: Project name may be listed only once, otherwise an error is
|
||||||
|
issued and command is not executed.
|
||||||
|
|
||||||
|
Examples:
|
||||||
|
AUTOVER "My Solution.sln" /P:"ConsoleApp1","ConsoleApp2"
|
||||||
|
AUTOVER "My Solution.sln" /P:-"Xlib"
|
||||||
|
AUTOVER "My Solution.sln" /P:!"ConsoleApp1",-"ConsoleApp2"
|
||||||
|
|
||||||
|
/C Check if project names provided with /P, /X and /F switches exist
|
||||||
|
in solution. Any invalid name causes:
|
||||||
|
E Error - command is not executed (default);
|
||||||
|
W Warning - command is executed ignoring invalid entries.
|
||||||
|
|
||||||
|
/A Apply version to:
|
||||||
|
A All projects;
|
||||||
|
M Modified projects only (default).
|
||||||
|
NOTE: /P and /X switches change the scope of /A switch by limiting
|
||||||
|
the scope to or excluding corresponding projects from scope,
|
||||||
|
respectively.
|
||||||
|
/F switch extends the scope of /A:M switch by including
|
||||||
|
corresponding projects.
|
||||||
|
|
||||||
|
/V Version types to modify:
|
||||||
|
A Assembly version;
|
||||||
|
P or I Product (i.e. Informational) version;
|
||||||
|
F File version;
|
||||||
|
* All version types.
|
||||||
|
If this switch is omitted, settings from configuration file are
|
||||||
|
applied. If configuration file does not exist, only Assembly
|
||||||
|
version is modified.
|
||||||
|
|
||||||
|
Examples:
|
||||||
|
AUTOVER "My Solution.sln" "1.+1.*.*"/V:AF
|
||||||
|
AUTOVER "My Solution.sln" /V:*
|
||||||
|
|
||||||
|
/S Synchronization of versions in projects:
|
||||||
|
S Synchronize (to the highest version);
|
||||||
|
I Increment and then synchronize;
|
||||||
|
N Increment versions independently.
|
||||||
|
If this switch is omitted, settings from configuration file are
|
||||||
|
applied. If configuration file does not exist, versions are
|
||||||
|
incremented independently.
|
||||||
|
NOTE: this switch cannot be used if version pattern is provided.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
AUTOVER "My Solution.sln" /S:I
|
||||||
|
|
||||||
|
/M Version update summary:
|
||||||
|
C Output to console (default);
|
||||||
|
F Write to a file (with optional filename);
|
||||||
|
N Suppress the summary.
|
||||||
|
If filename is omitted from /M:F switch, name is automatically
|
||||||
|
created from solution filename.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
AUTOVER "My Solution.sln" /M:CF"summary.txt"
|
||||||
|
|
||||||
|
/U SourceSafe username and password. If username or password are not
|
||||||
|
provided, user will be prompted to enter them if solution is under
|
||||||
|
SourceSafe control. If you do not want to provide password with
|
||||||
|
command stored in a script (e.g. in a BAT file), you may store
|
||||||
|
username only (without comma after it: /G:username); user will be
|
||||||
|
prompted to enter password when command is run.
|
||||||
|
NOTE: If /U switch is omitted and solution is under SourceSafe
|
||||||
|
control, username and password of the currently logged user is
|
||||||
|
used; if it is not valid, user will be prompted to enter them for
|
||||||
|
each file to be checked out!
|
||||||
|
|
||||||
|
Examples:
|
||||||
|
Provide username and password:
|
||||||
|
AUTOVER "My Solution.sln" /U:john,smith
|
||||||
|
Provide username and empty password:
|
||||||
|
AUTOVER "My Solution.sln" /U:john,
|
||||||
|
AUTOVER "My Solution.sln" /U:john,""
|
||||||
|
Provide username only, user will be prompted to enter password:
|
||||||
|
AUTOVER "My Solution.sln" /U:john
|
||||||
|
User will be prompted to enter username and password:
|
||||||
|
AUTOVER "My Solution.sln" /U
|
||||||
|
|
||||||
|
|
||||||
|
EXAMPLE 1:
|
||||||
|
|
||||||
|
AUTOVER /V:* /A:M "d:\my projects\MySolution.sln"
|
||||||
|
|
||||||
|
This command increments all versions (Assembly, File and Product) of
|
||||||
|
modified projects in MySolution solution, using numbering scheme from
|
||||||
|
configuration file (or default scheme if configuration file does not
|
||||||
|
exist)
|
||||||
|
|
||||||
|
|
||||||
|
EXAMPLE 2:
|
||||||
|
|
||||||
|
AUTOVER /V:AF /A:A "d:\my projects\MySolution.sln"
|
||||||
|
"2.0.*.+"
|
||||||
|
|
||||||
|
This command sets Assembly and File versions for all projects from
|
||||||
|
MySolution solution, using version mask provided:
|
||||||
|
- major version is set to 2
|
||||||
|
- minor version is set to 0
|
||||||
|
- build is left intact
|
||||||
|
- revision is incremented by 1
|
||||||
|
|
||||||
|
|
||||||
|
EXAMPLE 3:
|
||||||
|
|
||||||
|
AUTOVER /G
|
||||||
|
|
||||||
|
This command first pops-up File Open dialog so that user can browse for
|
||||||
|
a solution file. When user selects a SLN or DSW file, form with a list
|
||||||
|
of all projects is displayed, providing user precise control to set
|
||||||
|
versions for individual projects.
|
Binary file not shown.
Binary file not shown.
@ -0,0 +1,51 @@
|
|||||||
|
<SOAP-ENV:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:clr="http://schemas.microsoft.com/soap/encoding/clr/1.0" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
|
||||||
|
<SOAP-ENV:Body>
|
||||||
|
<a1:Hashtable id="ref-1" xmlns:a1="http://schemas.microsoft.com/clr/ns/System.Collections">
|
||||||
|
<LoadFactor>0.72</LoadFactor>
|
||||||
|
<Version>2</Version>
|
||||||
|
<Comparer xsi:null="1"/>
|
||||||
|
<HashCodeProvider xsi:null="1"/>
|
||||||
|
<HashSize>11</HashSize>
|
||||||
|
<Keys href="#ref-2"/>
|
||||||
|
<Values href="#ref-3"/>
|
||||||
|
</a1:Hashtable>
|
||||||
|
<SOAP-ENC:Array id="ref-2" SOAP-ENC:arrayType="xsd:anyType[2]">
|
||||||
|
<item id="ref-4" xsi:type="SOAP-ENC:string">_reserved_nestedSavedStates</item>
|
||||||
|
<item id="ref-5" xsi:type="SOAP-ENC:string">_reserved_lastInstallerAttempted</item>
|
||||||
|
</SOAP-ENC:Array>
|
||||||
|
<SOAP-ENC:Array id="ref-3" SOAP-ENC:arrayType="xsd:anyType[2]">
|
||||||
|
<item href="#ref-6"/>
|
||||||
|
<item xsi:type="xsd:int">0</item>
|
||||||
|
</SOAP-ENC:Array>
|
||||||
|
<SOAP-ENC:Array id="ref-6" SOAP-ENC:arrayType="a1:IDictionary[1]" xmlns:a1="http://schemas.microsoft.com/clr/ns/System.Collections">
|
||||||
|
<item href="#ref-7"/>
|
||||||
|
</SOAP-ENC:Array>
|
||||||
|
<a1:Hashtable id="ref-7" xmlns:a1="http://schemas.microsoft.com/clr/ns/System.Collections">
|
||||||
|
<LoadFactor>0.72</LoadFactor>
|
||||||
|
<Version>6</Version>
|
||||||
|
<Comparer xsi:null="1"/>
|
||||||
|
<HashCodeProvider xsi:null="1"/>
|
||||||
|
<HashSize>11</HashSize>
|
||||||
|
<Keys href="#ref-8"/>
|
||||||
|
<Values href="#ref-9"/>
|
||||||
|
</a1:Hashtable>
|
||||||
|
<SOAP-ENC:Array id="ref-8" SOAP-ENC:arrayType="xsd:anyType[6]">
|
||||||
|
<item id="ref-10" xsi:type="SOAP-ENC:string">VS_7_1_INSTALLDIR</item>
|
||||||
|
<item href="#ref-4"/>
|
||||||
|
<item id="ref-11" xsi:type="SOAP-ENC:string">VS_8_0_INSTALLDIR</item>
|
||||||
|
<item id="ref-12" xsi:type="SOAP-ENC:string">VS_10_0_INSTALLDIR</item>
|
||||||
|
<item id="ref-13" xsi:type="SOAP-ENC:string">VS_9_0_INSTALLDIR</item>
|
||||||
|
<item href="#ref-5"/>
|
||||||
|
</SOAP-ENC:Array>
|
||||||
|
<SOAP-ENC:Array id="ref-9" SOAP-ENC:arrayType="xsd:anyType[6]">
|
||||||
|
<item xsi:type="xsd:boolean">true</item>
|
||||||
|
<item href="#ref-14"/>
|
||||||
|
<item xsi:type="xsd:boolean">true</item>
|
||||||
|
<item xsi:type="xsd:boolean">true</item>
|
||||||
|
<item xsi:type="xsd:boolean">true</item>
|
||||||
|
<item xsi:type="xsd:int">-1</item>
|
||||||
|
</SOAP-ENC:Array>
|
||||||
|
<SOAP-ENC:Array id="ref-14" SOAP-ENC:arrayType="a1:IDictionary[0]" xmlns:a1="http://schemas.microsoft.com/clr/ns/System.Collections">
|
||||||
|
</SOAP-ENC:Array>
|
||||||
|
</SOAP-ENV:Body>
|
||||||
|
</SOAP-ENV:Envelope>
|
Binary file not shown.
Loading…
Reference in new issue