2017-04-06 42 views
3

我不明白一個文件不在git存儲庫&不在本地存儲庫(甚至沒有本地&物理文件夾),但是當我要提交或推動似乎在文件hierarachical?通過取消選中這個文件,我能夠正確推&拉代碼,但我很好奇,找到確切的問題。未知的文件名出現在hierarachical雖然承諾

enter image description here

+0

您的操作系統(OSX)創建此文件。參見[Wiki](https://en.wikipedia.org/wiki/.DS_Store)。我建議將這種文件添加到'.gitignore'中。 – shallowThought

回答

3

.DS_Store是隱藏的文件,這是由創建MacOS的存儲有關包含文件夾的信息。您應該將此文件添加到您的.gitignore,以便git不會將其顯示在未跟蹤/修改列表中。

根據wikipedia

在Apple的MacOS操作系統,.DS_Store是存儲其包含的文件夾的 自定義屬性,如 圖標的位置或背景圖像的選擇一個文件。該名稱是Desktop Services Store的縮寫,其名稱反映了其用途。它 創建和在Finder應用程序維護每個文件夾

+0

你好朋友**。DS_Store **已經在git存儲庫上並且在每個文件夾中包含我還可以做什麼來從分層中刪除此文件 – yummy

+0

@yummy:繼續並使用'find將其全部刪除。 -name .DS_Store -print0 | xargs -0 git rm -f --ignore-unmatch'並添加.gitignore並將其添加到回購。閱讀更多關於這裏:http://stackoverflow.com/a/107921/1104384 –

1

在.DS_Store是將出現在每個目錄默認HFS +文件系統的MacOS系統文件。您的Finder最有可能不會隱藏隱藏文件(帶點前綴)。您可以設置的.gitignore不包括.DS_Store,細節here

1

看來您已經更改文件名EditOrNewAddressVuewController.mEditOrNewAddressVuewController~.m是在.DS_Store &保存這些信息,你推代碼後遠程這種因爲.DS_Store信息有未經跟蹤文件會出現在你的Git工作樹的層次結構,

如果你不喜歡這種未經跟蹤文件,刪除.DS_Store添加的.gitignore文件。有用link1link2link3

即使,有避免看這個,克隆項目在另一個文件夾一個愚蠢的方法;)