博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
git在本地仓库直接使用rm彻底删除文件,服务端还是存在
阅读量:6760 次
发布时间:2019-06-26

本文共 783 字,大约阅读时间需要 2 分钟。

今天在本地仓库A希望删除一个文件test,于是执行以下命令

1
2
3
4
$ sudo rm test
$ git add .
$ git commit -m 
"delete test"
$ git push origin

在本地仓库检查,的确没有文件test了。然后再次从服务器拉下来看看,执行

1
$ git pull

test没有啦。我以为成功了。

但是在另一个客户端的本地仓库B拉下来,发现test又出来了。看来我以为的不是我以为的。
后来自己查资料,发现:
git add 表示 add to index only files created or modified and not those deleted
git add 只将新建的或者已更改的文件添加到索引区。(不会添加删除的文件

但是我们现在是通过先rm的命令,那应该如何完成提交,并真正从服务端删除呢:

git add -u
git add -u  这个命令的意思是 add to index only files modified or deleted and not those created
只会处理已修改或者已删除的文件,但是不会处理新建的文件

好了,执行以下命令:

1
2
3
$ git add -u
$ git commit -m 
"delete test"
$ git push

这时候我们在本地git status发现,已经没有了那些提交信息。再去本地仓库B看看,
test也没有了!

总结:如果我们要彻底通过git删除,分两种方式,如果先执行rm 命令去删除就可以使用本文的方法。
如果想通过git,可以使用git rm命令。

      本文转自Ansue  51CTO博客,原文链接:http://blog.51cto.com/ansue/1734300,如需转载请自行联系原作者

你可能感兴趣的文章
我的友情链接
查看>>
单页布局
查看>>
我的友情链接
查看>>
综合布线详细方案设计
查看>>
rhel6.3下安装GCC4.8.1
查看>>
大图片生成缩略图 导致imagecreatefromjpeg 内存崩溃问题
查看>>
我的友情链接
查看>>
手工恢复
查看>>
二 IOC再探
查看>>
一些常用软件的网络端口协议分类介绍
查看>>
机器学习服务器 PredictionIO 脱颖而出
查看>>
mysql不能连接远程mysql服务器
查看>>
Windows 8.1 重复数据删除——概念(一)
查看>>
iptables防火墙高级应用
查看>>
python运维-Socket网络编程
查看>>
yum管理包流程_学习笔记
查看>>
DeltaGrad领跑智能化交易领域 预见收益颠覆基金行业
查看>>
nginx keepalived tomcat实现的高可用
查看>>
Https能避免流量劫持吗?
查看>>
oracle教程之oracle 删除表空间
查看>>