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

我打开终端使git按-f

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

我不确定会有什么问题。


当前回答

有时ssh凭证是安装在你的电脑上与github回购通信。 当你设置新的repo:如果你添加了https格式的origin,你的git凭证管理器不能找出repo。

检查产地格式

git remote -v

https格式的来源

origin  https://github.com/username/repo_name.git

ssh格式的原点

origin git@github.com:username/repo_name.git

删除https格式的origin

git remote remove origin

添加ssh格式的origin

git remote add origin git@github.com:username/repo_name.git

其他回答

更新.git目录中的用户名和令牌。

转到git文件夹,进入。git文件夹,打开“config”文件 使用记事本或任何其他编辑器更改您的URL从 https://github.com/username/repo_name.git https://username:token@github.com/username/repo_name.git 用户名应该没有@域名。 保存并推送代码,它将工作。 在这里,您需要保存密码和 安全威胁。

您可能正在尝试推送到私有存储库。在这种情况下,您必须请求管理员验证Collaborator访问。

在Windows上:

进入。git文件夹 使用记事本或任何其他编辑器打开“配置”文件 将您的URL从https://github.com/username/repo_name.git更改 https://username: password@github.com/username/repo_name.git

保存并推送代码,它将工作。

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

我通过将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

这里的问题是windows凭据管理器,请去控制面板,搜索凭据管理器,并删除它关于github的所有内容