11

git rm --cachedとの違いがわかりませんgit update-index --assume-unchanged

git rm --cached <file>ステージング領域からファイルが削除されることは承知しています。

そして、私はそれがこれを行うことgit update-index --assume-unchanged <file>も知っています。

また、SOに関する同様の質問に対する提案として両方のコマンドが提供されていることも確認しました。

これらの 2 つのコマンドのいずれかに、それらを異なるものにする別の影響はありますか?

4

1 に答える 1

8

コマンド

git rm --cached <file>

Git ブランチ内のファイルの追跡を解除するために使用されます。このコマンドはfile、ステージング領域からファイルを削除し、次回のコミット時にリポジトリからもファイルを削除します

コマンド

git update-index --assume-unchanged <file>

またfile、ステージングエリアから消えます。ただし、このコマンドfile. そのため、ファイルをコミットすると、ファイルが既にそこにあると仮定して、リポジトリの一部のままになります。に加えられた変更を Git に表示させたい場合は、次のコマンドをfile実行できます。

git update-index --no-assume-unchanged <file>

これにより、以前に実行したときにファイルがステージング領域にあった場合、ファイルがステージング領域に戻されますassume-unchanged

ここに へのリンクgit rm --cachedあり、ここに へのリンクがありgit update-index --assume-unchangedます。

于 2015-10-30T04:42:38.523 に答える