私のファイルには次の項目がありますが、.gitignore
削除したいと思います。これは、これらのファイルがTeXコンパイル中に作成された一時的なジャンクファイルであり、削除できるようにしたいからです。
どうすればいいですか?
ベストアンサー1
git clean -Xdf
資本として-X
、git clean
ただ一致するファイルを削除します.gitignore
。
を使用すると、-d
一致するgit clean
ディレクトリ全体も削除されます.gitignore
。
を使用すると、-f
警告git clean
するのではなく実際にコンテンツが削除されます。それでも注意してください。他の理由(個人用direnv
設定など)がある可能性があるため、.gitignored
コマンドを実行する前にコマンドが実行する操作を常に理解する必要があります。
共有してくれた@Kusalanandaに特に感謝しますgit clean
。
git clean
あるいは、シンボリックリンクディレクトリを含む依存関係フォルダがあり、すべてを再帰的に削除したくない場合~へこれらのディレクトリでは、次のような長い形式を使用できます。
git ls-files --others --ignored --exclude-standard --directory | head -c -1 | tr '\n' '\0' | xargs -0 -r rm -r
git ls-files
このオプションを使用すると、同じディレクトリを一覧表示しgit clean -Xdn
ますが、コンピュータから読みやすくなります。
head -c -1
末尾の改行バイトを切り捨てます。
tr '\n' '\0'
すべての改行文字をNUL
sに変換します。
xargs -0 -r rm -r
ファイルとディレクトリを削除します。区切り文字を-0
作成しますNUL
。-r
空の入力をスキップします(警告:これは移植できないGNU拡張です)。