當我改變它時,有沒有辦法讓n提交併撤銷.vs代碼的跟蹤?
您可以嘗試BFG Repo-Cleaner以清除您的本地大型文件的回購,但它僅適用於裸回購。
對於您當前的本地(非裸)回購,您可以按照「Removing sensitive data from a repository」並從您所有過去的提交中移除該特定文件。
git filter-branch --force --index-filter \
'git rm --cached --ignore-unmatch PATH-TO-YOUR-FILE-WITH-SENSITIVE-DATA' \
--prune-empty --tag-name-filter cat -- --all
但實際上,你應該刪除.VS文件夾本身:詳見 「Remove folder and its contents from git/GitHub's history」
git filter-branch --tree-filter 'rm -rf src/.vs' --prune-empty HEAD
git for-each-ref --format="%(refname)" refs/original/ | xargs -n 1 git update-ref -d
echo .vs/ >> .gitignore
git add .gitignore
git commit -m 'Removing src/.vs from git history'
git gc
git push origin master --force
你應該把整個'.vs'目錄在'.gitignore'文件,你永遠不希望無論如何,每次都會生成它。如果您不需要進行個別更改,請複製您在其他地方更改過的文件,刪除並重新登錄回購站,然後在您擁有正確的.gitignore文件設置並提交併推送它們後將文件放回。 https://github.com/github/gitignore/blob/master/VisualStudio.gitignore –
謝謝@RetiredNinja。當我改變它時,是否有辦法讓n提交併撤銷.vs代碼的跟蹤?有點像rebase什麼的? 我真的不希望刪除回購,因爲我花了很多時間來設置配置文件 –
@Nexus https://stackoverflow.com/search?q=%5Bgit%5D+remove+directory+from+history – phd