从git索引中删除文件也会将文件从服务器上删除

从git索引中删除文件也会将文件从服务器上删除

问题描述:

我的服务器和我的电脑上有一个名为“myfile.php”的文件。
我想从git索引中删除myfile.php以防止在服务器中更改myfile.php。我通过将文件添加到.gitignore并使用“git rm --chached myfile.php”从索引中删除文件来完成此操作。
现在,当我运行“git pull”时,它会从服务器的工作目录中删除文件本身,但是我希望将它保留在服务器上,并且保持它不受更改的影响。 什么问题?从git索引中删除文件也会将文件从服务器上删除

+0

相关:http://stackoverflow.com/questions/3833757/how-do-i-gitignore-and-delete-an-already-commited-file-without-affecting-其他-W – 2010-10-01 20:04:47

如果你不小心添加到索引你想从索引中移除(但是从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 
# 
$