从git索引中删除文件也会将文件从服务器上删除
问题描述:
我的服务器和我的电脑上有一个名为“myfile.php”的文件。
我想从git索引中删除myfile.php以防止在服务器中更改myfile.php。我通过将文件添加到.gitignore并使用“git rm --chached myfile.php”从索引中删除文件来完成此操作。
现在,当我运行“git pull”时,它会从服务器的工作目录中删除文件本身,但是我希望将它保留在服务器上,并且保持它不受更改的影响。 什么问题?从git索引中删除文件也会将文件从服务器上删除
答
如果你不小心添加到索引你想从索引中移除(但是从Git的历史不会删除),那么文件中使用:
git reset HEAD <file>
此外,您还可以注意到,当你执行git status
,混帐实际上将告诉你:
$ git status
# On branch master
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# modified: my_file
#
$
相关:http://stackoverflow.com/questions/3833757/how-do-i-gitignore-and-delete-an-already-commited-file-without-affecting-其他-W – 2010-10-01 20:04:47