From b32a021c2d5075303f5987e702c9df83e7c365e7 Mon Sep 17 00:00:00 2001 From: 魏曹先生 <1992414357@qq.com> Date: Sat, 24 Jan 2026 03:52:13 +0800 Subject: Move hide logic to separate script --- scripts/hide_ignored_file.ps1 | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 scripts/hide_ignored_file.ps1 (limited to 'scripts') diff --git a/scripts/hide_ignored_file.ps1 b/scripts/hide_ignored_file.ps1 new file mode 100644 index 0000000..27355c2 --- /dev/null +++ b/scripts/hide_ignored_file.ps1 @@ -0,0 +1,29 @@ +# Hide all dotfiles and git-ignored files before build +# Set working directory to parent of script's directory +Set-Location -Path (Join-Path $PSScriptRoot "..") + +# First, unhide all files and directories in the current directory, but skip .temp and .git directories +Get-ChildItem -Path . -Force -Recurse -ErrorAction SilentlyContinue | Where-Object { + $_.FullName -notmatch '\\.temp\\' -and $_.FullName -notmatch '\\.git\\' +} | ForEach-Object { + attrib -h $_.FullName 2>&1 | Out-Null +} + +# Get all dotfiles and directories +Get-ChildItem -Path . -Force -Recurse -ErrorAction SilentlyContinue | Where-Object { + $_.Name -match '^\..*' -and $_.FullName -notmatch '\\\.\.$' -and $_.FullName -notmatch '\\\.$' +} | ForEach-Object { + attrib +h $_.FullName 2>&1 | Out-Null +} + +# Get git ignored files and hide them +if (Get-Command git -ErrorAction SilentlyContinue) { + git status --ignored --short | ForEach-Object { + if ($_ -match '^!!\s+(.+)$') { + $ignoredPath = $matches[1] + if (Test-Path $ignoredPath) { + attrib +h $ignoredPath 2>&1 | Out-Null + } + } + } +} -- cgit