Artikel ini menyediakan strategi dan alatan untuk mengenal pasti dan mengalih keluar fail yang tidak diperlukan daripada repositori Git untuk mengoptimumkan ruang storan dan meningkatkan prestasi. Isu utama yang dibincangkan ialah pengumpulan objek berjuntai, fail besar, dan untr
Untuk mengenal pasti dan mengalih keluar fail yang tidak diperlukan dari repositori git, ikuti langkah berikut:
Rungit gc --prune
to remove dangling objects: This command removes objects that are unreachable from any commit. Dangling objects can accumulate over time when you delete branches or commits.git filter-branch
to rewrite history: This command allows you to remove or modify specific files from the entire history of a branch. However, it's important to proceed cautiously as it rewrites the history of the repository.git ls-files -s
to identify large files and consider moving them to a separate location.git clean -n
to list untracked files and git clean -f
to remove them.After a merge or branch deletion, follow these cleanup best practices:
git branch -d <branch-name>
to delete the branch.git push <remote-name> --delete <branch-name>
.git reflog expire --expire=<duration>
to prune old entries in the reflog.git reset --hard <commit-hash>
git filter-branch
untuk menulis semula sejarah:Semak fail besar:
Fail besar boleh menggunakan sejumlah besar ruang repositori. Gunakangit ls-files -s
untuk mengenal pasti fail besar dan pertimbangkan untuk mengalihkannya ke lokasi yang berasingan. Gunakan git clean -n
untuk menyenaraikan fail yang tidak dijejaki dan git clean -f
untuk mengalih keluarnya.git branch -d <branch-name>
untuk memadamkan cawangan.
git push <remote-name> --delete <branch-name>
.
git reflog expire --expire=<duration>
untuk memangkas entri lama dalam reflog.🎜🎜🎜Reset HEAD:🎜 Jika anda ingin mengembalikan repositori kepada komit tertentu, gunakan git reset --hard <commit-hash>
. Ini akan mengalih keluar semua perubahan tidak komited dan menjadikan komit yang ditentukan sebagai HEAD baharu.🎜🎜🎜Alat Pembersihan Automatik🎜🎜Terdapat beberapa alatan dan skrip yang tersedia untuk mengautomasikan proses pembersihan dalam repositori git:🎜🎜🎜🎜perintah git-cleanup:🎜 -alat baris yang menyediakan pelbagai arahan pembersihan, seperti mengalih keluar fail yang tidak dijejaki, direktori kosong dan reflog.🎜🎜🎜git-prune:🎜 Skrip shell yang membantu memangkas komit, tag dan cawangan yang menjuntai.🎜🎜🎜git-sweep: 🎜 Skrip Ruby yang mengenal pasti dan mengalih keluar fail besar yang tidak dirujuk daripada repositori git.🎜🎜🎜git-annex:🎜 Alat yang membolehkan anda mengalihkan fail besar keluar dari repositori utama sambil tetap menjejakinya.🎜🎜Atas ialah kandungan terperinci pembersihan gudang git. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!