我有本地工作副本SourceTree。和所有的操作工作得很好,我可以简单的获取,推,拉等通过SourceTree。我只需要在SourceTree中不存在的force push。

我打开终端使git按-f

remote: Repository not found.
fatal: repository 'https://github.com/MyRepo/project.git/' not found

我不确定会有什么问题。


当前回答

在我们的案例中,这只是一个在github中授予写权的案例。最初用户只有读权限,它给出了这个错误。

其他回答

您可以尝试删除目录中的.git文件,并重新执行所有操作将解决您的问题!

增加“个人访问令牌”

自2021年以来,Github支持PAT而不是名称/密码(阅读这里如何创建和使用一个),所以我们只是把它添加到远程起源。

在Windows上

访问。git文件夹,打开配置文件进行编辑。如。vim配置。 将URL更改为 https://github.com/ <用户名> / < repo_name > . 来 https:// [personal-access-token] @github.com/ <用户名> / < repo_name > . 其中[personal-access-token]是你在github创建的PAT散列。 保存配置文件,现在推送应该可以工作了。

快捷方式:

git remote remove origin
git remote add origin https://[personal-access-token]@github.com/username/repo_name.git

更新

生成令牌时,如果希望令牌长时间工作,请选择“No expiration”。

在我的情况下,上述解决方案都不起作用。

我通过将remote.origin.url从https切换到ssh来解决这个问题:

验证git配置:

git config --list

应该是这样:

...
remote.origin.url=https://github.com/ORG/repo-name.git
...

使用SSH更新remote.origin.url:

git remote set-url origin git@github.com:ORG/repo-name.git

这可能是一个重叠的问题,你在同一时间配置不同的帐户。

试着检查:

git config user.name git config user.email

检查是否与远程回购相同。

查看repo git remote -v

我有同样的问题后,我设置了2FA在我的回购。如果你最近在你的账户上设置了2FA,下面是我解决这个问题的方法:

生成一个个人访问令牌

去设置->开发人员设置->个人访问令牌在你的GitHub帐户。生成一个新的个人访问令牌。确保检查所有与repo访问相关的权限。

删除所有GitHub认证配置(从Mac的keychain)

您需要使用生成的个人访问令牌重新登录,因此要清除笔记本电脑上以前的所有身份验证细节。对于mac,打开keychain并从登录/密码部分删除所有github.com相关细节。

用你的GitHub用户名和PAT作为密码登录到你的终端。

如果您在帐户上设置了2FA,则无法使用您的帐户进行身份验证 来自终端的GitHub密码。现在,尝试推送到GitHub回购以触发身份验证需求。你的终端上会弹出一个输入你的GitHub用户名的请求。输入您的用户名,并在提示输入密码时,使用生成的个人访问令牌作为密码。

这些步骤为我解决了问题。