Git –ステージングからファイルを削除する方法(コミットされる変更)
Gitでは、git reset HEAD -- 'files/folders/patterns'
を使用して、ステージング領域からファイルまたはフォルダーを削除できます(変更はコミットされます)。
1. ケーススタディ
git add
いくつかの不要なtarget/*.java
ファイルは、まだステージング中ですが、まだコミットされていません。
ターミナル
$ git add project/*/*.java $ git status On branch master No commits yet Changes to be committed: (use "git rm --cached..." to unstage) new file: README.md new file: pom.xml new file: src/main/java/com/example/benchmark/BenchmarkLoop.java new file: src/main/java/com/example/benchmark/bk/LoopSimpleTest.java new file: target/generated-sources/annotations/com/example/benchmark/generated/BenchmarkLoop_jmhType.java new file: target/generated-sources/annotations/com/example/benchmark/generated/BenchmarkLoop_jmhType_B1.java new file: target/generated-sources/annotations/com/example/benchmark/generated/BenchmarkLoop_jmhType_B2.java new file: target/generated-sources/annotations/com/example/benchmark/generated/BenchmarkLoop_jmhType_B3.java new file: target/generated-sources/annotations/com/example/benchmark/generated/BenchmarkLoop_loopForEach_jmhTest.java new file: target/generated-sources/annotations/com/example/benchmark/generated/BenchmarkLoop_loopForLoop_jmhTest.java new file: target/generated-sources/annotations/com/example/benchmark/generated/BenchmarkLoop_loopFor_jmhTest.java new file: target/generated-sources/annotations/com/example/benchmark/generated/BenchmarkLoop_loopIterator_jmhTest.java new file: target/generated-sources/annotations/com/example/benchmark/generated/BenchmarkLoop_loopWhile_jmhTest.java new file: target/generated-sources/annotations/com/example/benchmark/generated/BenchmarkLoop_loopWhite_jmhTest.java new file: target/generated-sources/annotations/com/example/benchmark/generated/BenchmarkLoop_sum_jmhTest.java new file: target/generated-sources/annotations/com/example/benchmark/generated/Main_jmhType.java new file: target/generated-sources/annotations/com/example/benchmark/generated/Main_jmhType_B1.java new file: target/generated-sources/annotations/com/example/benchmark/generated/Main_jmhType_B2.java new file: target/generated-sources/annotations/com/example/benchmark/generated/Main_jmhType_B3.java new file: target/generated-sources/annotations/com/example/benchmark/generated/Main_sum_jmhTest.java Untracked files: (use "git add ..." to include in what will be committed) .idea/ dependency-reduced-pom.xml jmh-benchmark.iml target/benchmarks.jar target/classes/ target/jmh-benchmark-1.0.jar target/maven-archiver/ target/maven-status/ target/original-benchmarks.jar target/original-jmh-benchmark-1.0.jar
2. 溶液
これらの不要なtarget/*.java
ファイルをステージングから削除するには、このgit reset HEAD -- target/*
を使用します
ターミナル
$ git reset HEAD -- target/* $ git status On branch master No commits yet Changes to be committed: (use "git rm --cached..." to unstage) new file: README.md new file: pom.xml new file: src/main/java/com/example/benchmark/BenchmarkLoop.java new file: src/main/java/com/example/benchmark/bk/LoopSimpleTest.java Untracked files: (use "git add ..." to include in what will be committed) .idea/ dependency-reduced-pom.xml jmh-benchmark.iml target/