[英]Git - remote: Repository not found
我有帶有本地工作副本的 SourceTree。 所有操作都運行良好,我可以通過 SourceTree 進行簡單的獲取、推送、拉取等操作。 我只需要進行 SourceTree 中不存在的強制推送。
我打開終端 git push -f
remote: Repository not found.
fatal: repository 'https://github.com/MyRepo/project.git/' not found
我不確定什么是問題。
我也面臨同樣的問題
remote: Repository not found
fatal: repository 'https://github.com/MyRepo/project.git/' not found
我卸載了 git 憑據管理器並重新安裝它,然后我可以輕松地拉取並推送到存儲庫。 這是命令
$ git credential-manager uninstall
$ git credential-manager install
找到存儲庫時可能會出現此消息,但我們沒有提交訪問權限。 措辭不好!
在克隆了老板為我創建的 gitHub 存儲庫后,我收到了 repo-not-found 消息。 我可以在本地克隆和提交,但不能向上游推送提交。 存儲庫所有者沒有給我寫權限。 通過請求對 repo 所有者的寫訪問權來解決。
因為您可能沒有首先識別終端的遠程 git 存儲庫。
git remote set-url origin https://github.com/MyRepo/project.git
接着,
git add .
git commit -m "initial commit"
git push origin master
這里的問題是您的本地 git 無法將更改推送到遠程檢查您的遠程設置是否正確
git remote -v
如果未正確設置,請嘗試將遙控器設置為
git remote set-url origin https://username@github.com/MyRepo/project.git
然后嘗試使用
git push -u origin master
此外,您的本地 git 可能具有不同的憑據,請也檢查一下。
在 Windows 上:
保存並推送代碼,它將起作用。
由於自 2021 年以來 Github 支持PAT而不是名稱/密碼( 在此處閱讀如何創建和使用一個),因此我們只需將其添加到遠程origin
中。
在 Windows 上
.git
文件夾並打開config
文件進行編輯。 例如。 vim config
。https://github.com/<username>/<repo_name>.git
https://[personal-access-token]@github.com/<username>/<repo_name>.git
[personal-access-token]
是您在 github 創建的 PAT 哈希。config
文件,現在推送應該可以工作了。捷徑:
git remote remove origin
git remote add origin https://[personal-access-token]@github.com/username/repo_name.git
在 Mac 上
如果您嘗試克隆 repo.... 那么可能會出現此問題,因為Keychain Access中的 github 帳戶中沒有 repo。 為了解決,請嘗試使用帳戶名進行克隆,例如
git clone https://username@github.com/org/repo.git
代替
如果您沒有寫入權限但只有讀取權限,則可能會發生。
如果它是私有存儲庫,則應將您添加為協作者。
檢查您的憑據是否正確。
Git 實際上不會說這些事情,它只會說使用您的憑據沒有找到 repo。
祝你好運。
對於 Linux 用戶:
git remote rm origin
git remote add origin https://GITHUB_USERNAME:PASSWORD@github.com/username/reponame.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 的所有內容
您之前可能使用其他一些 GitHub 憑據登錄。 這正是發生此錯誤的原因。
通常,mac 會將您的 GitHub 憑證存儲到鑰匙串訪問工具中。 您以前的 git 帳戶詳細信息在那里。 因此,它與您當前在其他帳戶中的 git 存儲庫不匹配。
解決方案簡單明了,
就是這樣,給你。
再次嘗試推動。 它會詢問你 git 用戶名和密碼。 您的新憑據將再次存儲在鑰匙串中,您的推送將完成。
歡呼!
如果您需要更多幫助,請回復我。
謝謝
在我們的案例中,這只是在 github 中授予寫入權限的案例。 最初,用戶只有讀取權限,它給出了這個錯誤。
雖然之前的回復提供了各種解決方案,但我發現其中最簡單的一個是將用戶名添加到存儲庫的 URL
git remote add origin https://your-username@github.com/your-username/repository-name.git
如果您已經定義了存儲庫(不添加用戶名),您可以按如下方式更新它,
git remote set-url origin https://your-username@github.com/your-username/respository-name.git
推送到遠程存儲庫時,git 不會從憑證助手中提取任何其他現有存儲庫的憑證,但會詢問用戶/存儲庫的特定密碼。
作為一般說明,我會不惜一切代價避免使用您的帳戶密碼,而是使用個人訪問令牌。 登錄github並選擇,
Settings > Developer Settings > Personal Access Tokens > Generate new token
只需確保在定義令牌的范圍時檢查repo ,並在要求輸入密碼時輸入令牌(而不是您的個人密碼)。
在我的 repo 上設置 2FA 后,我遇到了同樣的問題。 如果您最近在您的帳戶上設置了 2FA,我采取了以下措施來解決它:
轉到您的 GitHub 帳戶上的設置 -> 開發人員設置 -> 個人訪問令牌。 生成新的個人訪問令牌。 確保檢查所有與 repo-access 相關的權限。
您需要使用生成的個人訪問令牌重新登錄,因此請從您的筆記本電腦中清除所有以前的身份驗證詳細信息。 對於 Mac,打開鑰匙串並從登錄/密碼部分刪除所有與 github.com 相關的詳細信息。
如果您在您的帳戶上設置了 2FA,您將無法從終端使用您的 GitHub 密碼進行身份驗證。 現在,嘗試推送到 GitHub 存儲庫以觸發身份驗證需求。 輸入您的 GitHub 用戶名的請求將在您的終端上彈出。 輸入您的用戶名,當提示輸入密碼時,使用生成的個人訪問令牌作為密碼。
這些確切的步驟為我解決了這個問題。
我嘗試了一切,直到我意識到存儲庫所有者只給了我READ 權限,所以 Git 會拋出“remote: Repository not found”。
就我而言,由於用戶錯誤,我無法克隆 github。
轉到~/.gitconfig
然后嘗試刪除這行代碼(只需刪除它然后保存文件)。
[user]
name = youruser
email = youruser@domain.com
或嘗試在您的 cmd 或終端中使用一個襯墊: git config --global --remove-section user
並嘗試再次執行 git clone。 希望它會解決你的一天。 ><
禁用 GIT 憑據對我有幫助:
git config --global --unset credential.helper
解決方案 -
問題 -
$ git clone https://github.com/abc/def.git
Cloning into 'def'...
remote: Repository not found.
fatal: repository 'https://github.com/abc/def.git/' not found
解決辦法——卸載憑證管理器——
abc@DESKTOP-4B77L5B MINGW64 /c/xampp/htdocs
$ git credential-manager uninstall
abc@DESKTOP-4B77L5B MINGW64 /c/xampp/htdocs
$ git credential-manager install
有用....
我面臨同樣的問題並通過解決
git add .
git commit -m "message"
git remote set-url origin https://YOUR_GITHUB_USER@github.com/aceofwings/RotairERP.git
然后
git pull
有時會在您的 PC 上設置 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 格式刪除來源
git remote remove origin
以 ssh 格式添加源
git remote add origin git@github.com:username/repo_name.git
如果您正在使用訪問密鑰,請在創建訪問密鑰時提供適當的權限(我嘗試了所有權限並且它有效)
我使用gh
命令行工具(順便說一句,這很棒)
就我而言,我登錄了另一個 github 帳戶。 我只需要運行:
gh auth logout
gh auth login
然后使用正確的帳戶完成身份驗證流程。
您可能正在嘗試推送到私有存儲庫。 在這種情況下,您必須要求管理員驗證協作者訪問權限。
所以您的網址目前如下所示
https://github.com/RevanthM/Log_Monitoring
它需要看起來像這樣
https://RevanthM@github.com/RevanthM/Log_Monitoring
不同之處在於網址的開頭我添加了我的 github 用戶名,后跟 @ 符號。
如果您在 windows 上必須控制面板 - > windows Credentials然后從通用憑據選項中刪除 github 憑據。 然后嘗試克隆
執行git remote update
對我有用。
我在VS 代碼中遇到了這個錯誤,因為我使用的是 VS 代碼git extension 。 它將我的 git 憑據保存在 Linux 密鑰環上。 雖然我想從另一個可以訪問存儲庫的帳戶中提取。 最簡單的解決方案是打開 Linux shell(不是集成在 VS 代碼中的那個),然后運行:
git pull origin master
這一次,它會詢問你Github的用戶名和密碼。
您必須生成一個新令牌:這里的步驟https://docs.github.com/en/github/authenticating-to-github/keeping-your-account-and-data-secure/creating-a-personal-access-令牌
在本地刪除原點控制
git remote remove origin
再次添加它,但現在使用您生成的令牌
git remote add origin https: // <token> @ <git_url> .git
並推動它
git pull https://@<git_url>.git
筆記:
什么是 git_url? 是您當前項目示例的 url: github.com/yourUser/yourProy
並刪除<>
字符
這可能是身份驗證的問題。 SourceTree 緩存您的 github 憑據(用於通過 https 訪問存儲庫),但從終端您必須使用憑據配置 git( https://help.github.com/articles/creating-an-access-token-for -command-line-use/ )或使用 git+ssh 和 ssh 密鑰對( https://help.github.com/articles/generating-a-new-ssh-key-and-adding-it-to-the -ssh-agent/ )。
我在我的 Windows10 系統中遇到了同樣的問題。
這里的問題是您在系統中擁有的用戶名。 您可以使用解決它
git credential-manager uninstall
git credential-manager install
如果它不起作用,那么您必須在您的系統中安裝ubuntu
,該系統可在 App Store 獲得。
在那個 ubuntu 終端中,我強制推送存儲庫,並且在詢問我Username and Password
強文本后它起作用了
我有其他現有的 github 存儲庫,但我錯誤地認為我可以使用 git 命令創建存儲庫。 我認為我的問題是沒有個人訪問令牌,但我仍然無法使用以下命令推送來創建我的存儲庫。
git init
git add README.md
git commit -m "first commit"
git branch -M main
git remote add origin https://github.com/username/project.git
git push -u origin main
我不斷得到:
remote: Repository not found.
fatal: repository 'https://github.com/username/project.git/' not found
作為回應
git push -u origin main
但是,我發現需要在登錄我的帳戶后使用 github cli 或在他們的 github 站點上創建存儲庫。 一旦我這樣做了,一切都像一個魅力。
下面是我發現無法使用 git 命令創建 github 存儲庫的鏈接。
我試圖克隆一個 repo 並遇到了這個問題,之后我嘗試從windows credentials manager
中刪除所有與 git 相關的憑據,同時嘗試克隆 git 時詢問我的憑據並且失敗並出現錯誤invalid username or password
。 發生這種情況是因為我試圖克隆的 repo 位於 github 上的一個組織下,並且該組織啟用了兩個因素身份驗證,而 git bash 可能不知道如何處理 2fa。 因此,我從https://github.com/settings/tokens生成了一個令牌,並在嘗試克隆存儲庫時使用了 github 令牌而不是密碼,這很有效。
就我而言,我需要使用Ctrl + H打開 Linux 上的目錄以查看隱藏的文檔,因此我進入 Git 配置並取出 URL 中的.git
。
在ubuntu上,我遇到了這個問題。 我通過在下面運行此命令來重置憑據幫助程序來解決此問題。
git config credential.helper ""
運行此命令后,當您拉或推時,您將被要求再次輸入您的憑據。
我通過刪除.git
文件(隱藏文件夾)然后再次上傳來解決它。
我遇到了同樣的問題,發現我在~/.ssh
中有另一個密鑰文件,用於不同的 GitHub 存儲庫。 不知何故,它被用來代替新的。
檢查 url s.source 是否正確。
我的例子
// fail Project>>t<<est
s.source = { :git => '.../Projecttest-iOS', :tag => s.version.to_s }
// success Project>>T<<est
s.source = { :git => '.../ProjectTest-iOS', :tag => s.version.to_s }
對於我的團隊來說,這是一個權限問題。 在 GitHub 設置中,我們團隊中的所有成員都將其設置為閱讀模式。 一旦我們將下拉菜單更改為寫入,我們都能夠成功克隆和推回。
如果您使用的是 Git 桌面應用程序,那么您應該嘗試推送和拉取表單 git 桌面應用程序而不是終端。 它會幫助你。
我看到了這個致命的:由於人們嘗試從免費層上的私人 GitHub 帳戶推送和拉取,現在更頻繁地發現存儲庫未找到錯誤。 這些是該問題的最常見解決方案:
Windows 憑據管理器?
有時 Windows 憑據管理器會緩存您的 u/p 並在幕后傳遞它。 如果您最近更改了密碼,或者正在使用不同的用戶名,您可能需要進入憑證管理器並清除 GitHub 的現有條目。
您可以嘗試刪除目錄中的.git
文件,然后再次執行所有操作將解決您的問題!
我遇到過同樣的問題
它是通過檢查 git config 中的 http.proxy 值來解決的(我的不正確且不需要),因此我從 git config 中刪除了 http.proxy 值
命令:
列出文件中的配置項
git config --list
刪除代理
git config --global --unset http.proxy
問題解決了!
我也有這個問題。 為了解決這個問題,我: 1. 將我的本地 .dotfiles 移到 _.dotfiles_bak 2. 克隆我的遠程 git 存儲庫 3. 將我的所有文件從 _.dotfiles_bak 復制到 .dotfiles - 除了 .git 文件夾 3. 然后我可以在本地工作再次:編輯、提交和推送
當存儲庫、團隊名稱或用戶名更改時會發生這種情況。
有一個解決方案(我知道):恢復存儲庫名稱。
試試這個,它對我有用。
git remote rm origin
git remote add origin https://github.com/your-username/{{project-name}}.git
如果 repo 是私有的,請確保您已接受 repo 邀請。 如果 repo 是私有的而不接受 repo 邀請,如果您將直接推送更改,則會給出相同的錯誤。
我遇到了同樣的問題,但是當我發現我已經從另一個帳戶創建了存儲庫並嘗試從另一個帳戶推送代碼時。 就是這樣,現在我只需要授予對另一個帳戶的訪問權限即可解決問題。 您會發現從
Setting > Contributors > Add People
無需從憑據管理器中刪除現有憑據
您只需要在 github.com 之前將您的 github用戶名@添加到您的克隆命令中,如下所述:
git clone https://username@github.com/MyRepo/MyProject.git
將出現一個身份驗證提示,您必須登錄到您的 github 帳戶,身份驗證將成功,您的存儲庫將被克隆。
這個問題困擾了很長時間,直到我了解了Git的配置系統,才得到確切的解決方案。
Git 用於將特定的 github 帳戶憑據鏈接到存儲庫,這意味着您只能為每個存儲庫初始化一個 github/gitlab 帳戶,以便推送/拉取對存儲庫遠程源的任何更改,這完全有意義。
另一個要記住的警告是,在設置 git 配置時,您是在本地還是全局設置用戶名和 email(我更願意保留我的用戶名和 Z0C83F57C786A0B4A39EFAB23731C7EBC 本地存儲庫,因為我可以在本地使用多個帳戶同一台機器,即一個個人帳戶,另一個用於工作場所),或者您最終會以一個意外的用戶名提交,如果您坐在辦公室沙發上做自由職業,這可能會暴露您的 email。
這可能是一個重疊的問題,您同時使用不同的帳戶進行配置。
嘗試檢查:
git config user.name
git config user.email
檢查它是否與remote
倉庫相同。
檢查 repo git remote -v
確保您擁有正確的訪問權限,當分支受到保護時可能會發生這種情況。
我只是浪費了四個富有成效的時間來處理這個問題。
更新 .git 目錄中的用戶名和令牌。
Go到git文件夾和go里面.git文件夾打開'config'文件
使用記事本或任何其他編輯器將您的 URL 從
https://github.com/username/repo_name.git到 https://username:token@github.com/username/repo_name.git
用戶名應該沒有@domain name。
保存並推送代碼,它將起作用。
在這里,您需要保存密碼和安全威脅。
使用 VS Code 和沒有密碼的密鑰:
~/.zshrc
文件中刪除了eval "$(ssh-agent -s)"
行以停止在后台運行它(Github 生成新的 SSH 密鑰文章的第一步).ssh/config
條目 * .github.com沒有UseKeychain行ssh-add ~/.ssh/id_ed25519
沒有--apple-use-keychain
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.