tye/clean.ps1

43 строки
897 B
PowerShell

#requires -version 5
<#
.SYNOPSIS
Clean this repository.
.DESCRIPTION
This script cleans this repository interactively, leaving downloaded infrastructure untouched.
Clean operation is interactive to avoid losing new but unstaged files. Press 'c' then [Enter]
to perform the proposed deletions.
.EXAMPLE
Perform default clean operation.
clean.ps1
.EXAMPLE
Clean everything but downloaded infrastructure and VS / VS Code folders.
clean.ps1 -e .vs/ -e .vscode/
#>
[CmdletBinding(PositionalBinding = $false)]
param(
# Other lifecycle targets
[switch]$Help, # Show help
# Capture the rest
[Parameter(ValueFromRemainingArguments = $true)]
[string[]]$GitArguments
)
Set-StrictMode -Version 2
$ErrorActionPreference = 'Stop'
if ($Help) {
Get-Help $PSCommandPath
exit 0
}
git clean -dix -e .dotnet/ -e .tools/ @GitArguments
git checkout -- $(git ls-files -d)