You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- variables: Strings that are expanded to PowerShell variables. Use `$env:Foo to
62
+
define environment variables, try `$env:GitRoot to create paths relative
63
+
to the repo root, and try `$env: to reference environment variables.
64
+
65
+
- The following are 'special' variables that light up aliases:
66
+
67
+
- `$env:PatchBuildCmd - The command to build with prior to patching.
68
+
69
+
- `$env:PatchSourceDir - The source folder to copy bits from.
70
+
71
+
- `$env:PatchTargetDir - The destination to patch to. You can optionally
72
+
set this with the vspath alias or your own script.
73
+
74
+
- `$env:PatchTargetExe - The main executable of the application being patched.
75
+
76
+
- files: a dictionary of source -> destination path that are backedup and patched.
77
+
Can use environment variables.
78
+
79
+
- commands: an array of PowerShell commands to run after the patch and unpatch.
80
+
81
+
60
82
#### Start VS
61
83
- Find VS instances with `vsget`
62
84
- Launch desired instance with `vsstart [instance number]`.
@@ -69,6 +91,14 @@ Must first set `$env:PatchTargetDir` to directory you want to patch. Use `vspatc
69
91
- Check if your currently selected VS instance has been patched with `ptstatus`.
70
92
- Unpatch a specific profile using `ptrevert [profile name]`.
71
93
94
+
#### Inner Dev Loop
95
+
- You can run the typical inner dev loop of build, deploy, run with:
96
+
- ptuse [profile name] - Chooses a profile to use for this PowerShell session. Enables you to not specify each time.
97
+
- ptbuild - builds the project with the command specified by $env:PatchBuildCmd
98
+
- ptrun - runs the target application in $env:PatchTargetExe
99
+
- ptbuildrun - builds, patches, and runs the target application using the commands in $env:PatchBuildCmd and
100
+
$env:PatchTargetExe.
101
+
72
102
#### F5 debug your project
73
103
- Follow steps above for 'Configuring' your machine and profile.
74
104
- Ensure that 'Patch and Restore' from above work.
@@ -109,6 +139,12 @@ Use with Visual Studio
109
139
- ptstatus [profile]: Checks the current target application for patched files.
110
140
- ptrevert [profile]: Reverts the current profile's patched binaries.
111
141
- ptF5 [vsinstance][solutionpath][profile]: Launches the specified instance of VS with the specified solution + profile configured for one-click (F5) debugging.
142
+
- ptbuild [profile]: Builds the project for the named profile using the command contained in $env:PatchBuildCmd.
143
+
- ptrun [profile]: Runs the target executable for the named profile using the command contained in $env:PatchTargetExe.
144
+
- ptbuildrun [profile]: Builds, patches, and runs using the $env:PatchBuildCmd and $env:PatchTargetExe variables.
145
+
- ptuse [profile]: Indicates that this profile should be used for the duration of the PowerShell session. Run this once
146
+
and no longer need to specify the profile each build.
147
+
112
148
113
149
#### Process Snapshot
114
150
Defines some convenient scripts and aliases for killing groups of processes
@@ -140,7 +176,7 @@ Aliases for launching Visual Studio installs developer command prompts.
140
176
- vspatch [instance]: Selects an instance of VS as the target application for patching.
141
177
142
178
## ChangeLog
143
-
- 8/15/2019 - Install to consistent location. Can now uninstall with 'Uninstall-Tools' function. Fixed issue where we'd pollute the user's path.
179
+
- 8/15/2019 - Install to consistent location. Can now uninstall with 'Uninstall-Tools' function. Fixed issue where we'd pollute the user's path. Refined build, deploy, run workflow aliases.
144
180
- 7/17/2019 - Support environment variables in patch paths and define $env:GitRoot for the root of the current repo.
145
181
- 6/7/2019 - Fixed killing of locking processes when doing revert. Fixed overwriting of backup when revert fails. Print release notes on startup. Init submodule on build.
146
182
- 5/10/2019 - Add 'scratch' to default nav locations.
0 commit comments