删除本地文件会自动从git repo中删除?

时间:2014-09-27 15:31:08

标签: git

当我删除本地工作目录中的文件并制作git add . git commit并最终git push时,这些文件只是在远程仓库和其他人的工作目录中拉我的提交。

除了git rm之外,是否还有一种方法可以告诉git在任何地方删除这些文件(远程仓库和其他文件的工作目录)?

2 个答案:

答案 0 :(得分:3)

使用-u git add选项暂存删除已删除的文件。

git add -u

从联系手册:

  

- 更新

     

仅匹配<filepattern>针对索引中已跟踪的文件而不是工作树。这意味着它永远不会暂存新文件,但是它会暂存已修改的跟踪文件的新内容,并且如果已删除工作树中的相应文件,它将从索引中删除文件。 / p>      

如果没有给出<filepattern>,则默认为&#34;。&#34 ;;换句话说,更新当前目录及其子目录中的所有跟踪文件。

正如@farzad所描述的,如果你然后提交并推送,那么任何拉动最新版本分支的人都会看到相关文件被删除。

答案 1 :(得分:2)

如果文件受git控制(不在排除列表中),那么最好使用正确的git命令删除文件:

 git rm filename
 git commit -m "removed filename because of the reason"
 git push

这将从版本控制中删除该文件,因此在此之后拉动的任何人都将删除该文件。