Initial website commit with all files
This commit is contained in:
99
Upload-To-GitHub.ps1
Normal file
99
Upload-To-GitHub.ps1
Normal file
@@ -0,0 +1,99 @@
|
||||
function Push-To-GitHub {
|
||||
param (
|
||||
[Parameter(Mandatory=$true)]
|
||||
[string]$GitHubRepo,
|
||||
|
||||
[Parameter(Mandatory=$true)]
|
||||
[string]$Username,
|
||||
|
||||
[Parameter(Mandatory=$false)]
|
||||
[string]$Token
|
||||
)
|
||||
|
||||
# Check if Git is installed
|
||||
try {
|
||||
$gitVersion = git --version
|
||||
Write-Host "Git is available: $gitVersion" -ForegroundColor Green
|
||||
}
|
||||
catch {
|
||||
Write-Host "Git is not installed or not in PATH. Please install Git first." -ForegroundColor Red
|
||||
return
|
||||
}
|
||||
|
||||
# Check if repository exists
|
||||
if (-not (Test-Path -Path ".git")) {
|
||||
Write-Host "Initializing git repository..." -ForegroundColor Yellow
|
||||
git init
|
||||
}
|
||||
else {
|
||||
Write-Host "Git repository already initialized." -ForegroundColor Green
|
||||
}
|
||||
|
||||
# Configure remote
|
||||
$remoteUrl = "https://$Username@github.com/$GitHubRepo"
|
||||
if ($Token) {
|
||||
$remoteUrl = "https://$Username:$Token@github.com/$GitHubRepo"
|
||||
}
|
||||
|
||||
# Check if origin exists
|
||||
$remotes = git remote
|
||||
if ($remotes -contains "origin") {
|
||||
Write-Host "Updating remote URL..." -ForegroundColor Yellow
|
||||
git remote set-url origin $remoteUrl
|
||||
}
|
||||
else {
|
||||
Write-Host "Adding remote..." -ForegroundColor Yellow
|
||||
git remote add origin $remoteUrl
|
||||
}
|
||||
|
||||
# Add all files
|
||||
Write-Host "Adding all files..." -ForegroundColor Yellow
|
||||
git add .
|
||||
|
||||
# Commit changes
|
||||
Write-Host "Committing changes..." -ForegroundColor Yellow
|
||||
git commit -m "Upload entire website"
|
||||
|
||||
# Get current branch name
|
||||
$branch = git rev-parse --abbrev-ref HEAD
|
||||
Write-Host "Current branch: $branch" -ForegroundColor Green
|
||||
|
||||
# Push to GitHub
|
||||
try {
|
||||
Write-Host "Pushing to GitHub... This might take a while depending on your file size and internet connection." -ForegroundColor Yellow
|
||||
if ($Token) {
|
||||
git push -u origin $branch
|
||||
}
|
||||
else {
|
||||
# Push and capture output to avoid showing credentials in the terminal
|
||||
$output = git push -u origin $branch 2>&1
|
||||
if ($LASTEXITCODE -ne 0) {
|
||||
Write-Host "Push failed. You might need to provide a token." -ForegroundColor Red
|
||||
Write-Host "Visit https://github.com/settings/tokens to create a token with 'repo' scope."
|
||||
$Token = Read-Host "Enter your GitHub Personal Access Token" -AsSecureString
|
||||
$BSTR = [System.Runtime.InteropServices.Marshal]::SecureStringToBSTR($Token)
|
||||
$plainToken = [System.Runtime.InteropServices.Marshal]::PtrToStringAuto($BSTR)
|
||||
|
||||
$tokenUrl = "https://$Username:$plainToken@github.com/$GitHubRepo"
|
||||
git remote set-url origin $tokenUrl
|
||||
git push -u origin $branch
|
||||
}
|
||||
}
|
||||
|
||||
if ($LASTEXITCODE -eq 0) {
|
||||
Write-Host "Successfully pushed to GitHub!" -ForegroundColor Green
|
||||
Write-Host "Visit https://github.com/$GitHubRepo to see your repository."
|
||||
}
|
||||
}
|
||||
catch {
|
||||
Write-Host "Error pushing to GitHub: $_" -ForegroundColor Red
|
||||
}
|
||||
}
|
||||
|
||||
# Run the function
|
||||
Write-Host "GitHub Website Uploader" -ForegroundColor Cyan
|
||||
Write-Host "======================" -ForegroundColor Cyan
|
||||
$repo = Read-Host "GitHub Repository (e.g., shaurya05745/website)"
|
||||
$username = Read-Host "GitHub Username"
|
||||
|
||||
Push-To-GitHub -GitHubRepo $repo -Username $username
|
||||
Reference in New Issue
Block a user