Git更改为将提交的文件标记为已删除

jak*_*las 2 git github

由于某些重构,我想删除存储库中的一些旧文件。Git表示我的本地仓库是最新的。但是,当我运行时,git status我得到以下信息:

# On branch master
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)
#
#       deleted:    app/foo1.php
#       deleted:    app/foo2.php
#       deleted:    app/foo3.php
#       deleted:    app/foo4.php
#       deleted:    app/foo5.php
#       deleted:    app/foo6.php
Run Code Online (Sandbox Code Playgroud)

在此之前,我习惯git rm <file>commit他们。

  1. 为什么会这样呢?
  2. 我可以永久删除这些deleted文件吗?我的意思是当我运行git status它时Everything up-to-date

`

sky*_*ack 5

通过使用,git rm您实际上删除了文件,但是仍然必须将更改应用于本地和远程存储库。

为此,请使用以下命令:

git commit -m "clean up"
git push origin master
Run Code Online (Sandbox Code Playgroud)

第一个将您的更改提交到本地存储库,并使它们可用于下次推送到远程存储库。第二个命令实际上传递更改。

当然,请随时个性化提交的消息。而且,我假设您正在master分支上,如果未正确将其设置为正确的分支。