我想把很多檔案放在一個存盤庫中。但是,它們的大小超過 10GB。它們是很多檔案。總存盤空間約為 13GB。
我正在考慮解決這個問題的方法。現在我正在考慮創建一個單獨的存盤庫,我可以在其中推送其余檔案。但是因為有很多檔案,手動操作太繁瑣了。
有什么方法可以查看哪些檔案沒有添加到 git 中(也許它們被稱為未版本控制的檔案)?然后洗掉所有未添加的檔案。然后在同一個檔案夾中初始化一個新的 repo 并將其余的推送到另一個存盤庫。
請讓我知道這是否可行。如果存在,我愿意在 git 周圍使用 shell 或 python 包裝器。
這些檔案彼此無關,因此將它們保存在兩個單獨的存盤庫中并不是什么大問題。
uj5u.com熱心網友回復:
要查找尚未提交的檔案:
git status --porcelain --untracked-files --ignored
這將向您顯示所有更改的檔案路徑,包括在 中的檔案路徑.gitignore,以及下降到目錄中的檔案路徑。如果您的存盤庫中沒有掛起的更改,這應該只是未跟蹤/忽略的檔案。行的開頭將有 3 個字符,例如?? 或!! 代表您可以剝離的狀態,| cut -c 4-除非您想決議它們以區分不同的狀態。
從那里 - 將這些檔案移動到不同的目錄會更容易(而不是移動所有其他檔案)。
uj5u.com熱心網友回復:
我的方法是純粹使用 Git:
git status # Make sure you don’t have any change in already tracking files
cat .gitignore # If you ignore some files that you want to actually index, modify this file
git add . # Adding all untracked files
git commit # Take note of this commit hash, abcde123
cd ../another_new_repo
git init
git fetch ../old_repo
git cherry-pick abcde123
uj5u.com熱心網友回復:
列出所有跟蹤的檔案:
git ls-tree --full-tree -r --name-only HEAD
洗掉所有跟蹤的檔案:
git ls-tree --full-tree -r --name-only HEAD |
xargs git rm
洗掉存盤庫:
rm -rf .git
創建一個新的存盤庫,在目錄中添加檔案:
git init
git add .
git commit -m "Initial commit"
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/359473.html
