首页 > 解决方案 > 在使用 pat 使用 azure powershell 将代码推送到 bitbucket 时收到“致命:不是 git 存储库(或任何父目录):.git”

问题描述

我正在编写一个 Azure PowerShell 脚本,该脚本将使用 JSON 文件,该文件包含我的所有 SQL 脚本和 Migrationflag 列(保留执行/待执行)的位置并执行所有脚本序列。执行后,标志将更改为“N”,更新的 JSON 文件应上传到 bitbucket。现在,我在尝试推送时遇到“致命:不是 git 存储库(或任何父目录):.git”错误。

我用用户名创建了一个 pat 令牌和服务连接:santhoshsreshta,下面是要推送的代码。

$v_JSON = Get-Content '$(system.defaultworkingdirectory)\locationToBuild\BuildOrder.json' -Raw | ConvertFrom-Json
$v_JSON | Sort-Object -Property OrderNo | Where-Object {$_.MigratedFlag -like 'Y'} | ForEach {
                 $Script =  $_.Location
Write-Host "Executing Script: $Script"    
Invoke-Sqlcmd -ServerInstance "myservername" -Database $(database) -Username $(testauto_username)  -Password $(testauto_password) -InputFile $(system.defaultworkingdirectory)\$Script
                    $_.MigratedFlag = 'N'
                    }
$v_JSON | ConvertTo-Json -depth 32| set-content '$(system.defaultworkingdirectory)\locationToBuild\BuildOrder.json'
                
$MyPat = 'mypatcode'
git push https://mygitusername:$MyPat@bitbucket.org/xyz/abcd.git

收到错误,"##[error]fatal: Not a git repository (or any parent directory): .git" 但在发出 git clone https://mygitusername:$MyPat@bitbucket.org/xyz/abcd 时。 git -- 得到无效的用户名/密码错误。我相信我们不应该再次克隆,因为我的管道获取源任务将克隆它并放入自托管代理。

这是我的 git 网址:https://mygitusername@bitbucket.org/xyz/abcd.git

非常感谢,这里是 DevOps 和 PowerShell 新手。

标签: azure-devopsbitbucketazure-pipelinesazure-powershell

解决方案


这意味着没有本地 .git 并且您需要先执行以下操作:

git init
git commit -m "first commit"
git branch -M main
git remote add origin https://your-repo-url
git push -u origin main

我刚刚从 GitHub 页面复制了以下内容,它适用于 Azure Repos :-) 进一步展示了遵循通用标准的公司的力量和优势


推荐阅读