簡體   English   中英

為什么 git 說我的文件在存儲庫之外?

[英]Why does git say that my file is outside the repository?

嘿,初學者,我如何使用 git 將文件上傳到 github。

這是我的命令:

$ git add C:\Users\Dan\Downloads\filecrdownload
fatal: C:UsersDa: 'C:UsersDan' is outside repository

做錯了什么? 我應該如何解決這個問題?

您只能從git repo添加文件。

您可以使用git init初始化當前位置的git repo。 然后你可以做git add path_to_your_file

假設您已經在Github上設置了存儲庫,則需要在計算機上克隆它。

git clone <url-to-repo>

網址可以在您的倉庫的首頁上找到: github回購網址

克隆將在文件系統中創建一個新目錄,您將需要將文件移到該目錄中。

將文件放入git目錄后,您只需執行以下操作:

git add filecrdownload
git commit -m "Added filecrdownload"
git push

哪個階段執行filecrdownload ,進行新提交並推送該提交。 您現在應該在Github上看到它。

在另一種情況下,您會看到該錯誤消息:路徑相同且大小寫不同(小寫/大寫)

mkdir "c:\repo"
cmd /K "cd c:\repo\"
git init
echo "content" > file.txt
git add C:\repo\file.txt

注意add C:\\ vs. c:\\

問題在2016年的git-for-windows / git問題735中進行了報告, 在2017年的Windows Git(Git分支)2.16中已修復,現在(2019年2月)在Git 2.21中可用。

請參閱Johannes Schindelin( dscho )的 commit d8727b3 (2019年1月18日
(由Junio C gitster - gitster-提交ff09c9e合並 ,2019年2月5日)

abspath_part_inside_repo :尊重core.ignoreCase

如果文件系統不區分大小寫,那么我們真的必須小心,僅在區分大小寫時才忽略差異。

如果有人在沒有遙控器的本地非裸倉庫上的 mac(在我的情況下是 M1 上的 Big Sur)上得到這個,並試圖撕掉他們的頭發; 我收到了這個錯誤,來自這里或其他搜索的所有其他結果要么是愚蠢的(比如期望每個人都使用 GitHub),要么就是錯誤的。

由於 Windows 大寫/小寫驅動器號不適用,並且路徑與正確的完整路徑和相同的大寫相同,例如 /home/me/repo/test.txt 不會添加,即使所有內容看起來都相似:

我查看了.git/config並且有一行

precomposeunicode = true

考慮有關字符集等的其他回復(這些天誰曾在 UTF-8 之外工作過,但仍然如此)我一時興起將其更改為FALSE

它奏效了! 我的提交通過了!

我想我會在這里寫這個,因為它是對顯然只有我經歷過的事情的修復,以避免成為一個愚蠢的聰明的古代人。

https://xkcd.com/979/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM