-
Notifications
You must be signed in to change notification settings - Fork 1
/
install.ps1
66 lines (64 loc) · 2.45 KB
/
install.ps1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
<#
**** Genprof,means [GenerateProjectsFolders]'s abbreviation.
**** Programmer:Harold.Duan
**** Date:20200110
**** Reason:Installing giprote scripts.
#>
$cur_path=$PWD
Write-Output "Downloading..."
# Write-Output $env:USERPROFILE
if (Test-Path "$env:USERPROFILE\.giprote")
{
Remove-Item -Force -Recurse $env:USERPROFILE\.giprote
}
New-Item -Path $env:USERPROFILE\.giprote -ItemType directory | Out-Null
$giprote_dir="$env:USERPROFILE\.giprote\giprote.commandline"
# [environment]::SetEnvironmentvariable("Path", ";$giprote_dir", "User")
[environment]::SetEnvironmentvariable("giprote_dir", "$giprote_dir", "User")
# Write-Output $giprote_dir
# [environment]::GetEnvironmentvariable("giprote_dir", "User")
# Copy-Item -Recurse -Force .\scripts $env:giprote_dir
# Copy-Item -Recurse -Force .\templates $env:giprote_dir
Set-Location $env:USERPROFILE\.giprote
# if (Test-Path giprote.commandline)
# {
# Remove-Item -Force -Recurse giprote.commandline
# }
# git clone https://github.com/EDITeam/giprote.commandline.git
git clone https://gitee.com/haroldduan/giprote.commandline.git
Write-Output "Installing..."
Set-Location $env:giprote_dir
# git branch -r | grep -E "[0-9].[0-9].[0-9]" | while read remote; do git branch --track "${remote#origin/}" "$remote"; done
$remotes=$(git branch -r | Where-Object { $_ -match "^.*^(?!.*HEAD).*[0-9].*" })
foreach($remote in $remotes) {
# Write-Output "$remote"
$max = "0.0.0"
$temp = $remote.Trim().Substring(7,$remote.Trim().Length - 7)
# Write-Output $temp
git branch --track $temp $remote.Trim()
# Write-Output "$temp"
if ($temp -gt $max) {
$max = $temp
# Write-Output "$max"
}
}
git fetch --all
git pull --all
git checkout $max
# Copy-Item -Recurse -Force gpt.ps1 $giprote_dir
# if (-not (Test-Path "$env:USERPROFILE\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1"))
# {
# New-Item -Type file -Force -Name $profil
# }
if (!(Test-Path -Path $PROFILE)) {
New-Item -ItemType File -Path $PROFILE -Force | Out-Null
}
Copy-Item -Recurse -Force .\scripts\Microsoft.PowerShell_profile.ps1 $env:USERPROFILE\Documents\WindowsPowerShell
& $env:USERPROFILE\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
Write-Output "Done!"
.$giprote_dir\scripts\copyright.ps1 "copyright"
Get-Content -Encoding utf8 $giprote_dir\scripts\version
.$giprote_dir\scripts\copyright.ps1 "giprote"
# PowerShell
Set-Location $cur_path
PowerShell