git如何移除某文件夹的版本控制

摘要:
付出的努力得到了回报。解决问题的方法实际上是gitrm的命令行参数。Gitrm命令参数-n——干运行,不手动删除任何文件。相反,只需向yexist显示索引,并通过命令进行明智的删除。-r给定读目录名时允许草拟移动。--cached使用此选项仅从索引中取消声明和删除数据。工作树,无论是否修改,都将是eftalone解决方案gitrm-r-n-cached“bin/”//-n:使用此参数,在执行命令时,不会删除任何文件,但将显示命令要删除的文件列表的预览。将来必要时,只需在中注释#bin/content。gitnore并重新执行gitbin/以将其重新合并到版本管理中。

目录结构如下

project
    bin
    lib
    src
    ...... 

执行如下的操作

git add.
git commit -m "add bin/ lib/ src/"
git push origin master

突然发现原来lib目录不需要提交到版本库,但是现在远程已经存在该目录,what should I do.(吐出去的东西还能收回来吗)

万能的Git啊,help me!

功夫不负有心人,找到了解决问题的方法,其实就是gitrm的命令行参数。

git rm命令参数

-n --dry-run 
Don’t actually remove any file(s). Instead, just show if they exist in the index and would otherwise be removed by the command. -r Allow recursive removal when a leading directory name is given. --cached Use this option to unstage and remove paths only from the index. Working tree files, whether modified or not, will be left alone. 

解决方法

git rm -r -n --cached "bin/" //-n:加上这个参数,执行命令时,是不会删除任何文件,而是展示此命令要删除的文件列表预览。
git rm -r --cached  "bin/"      //最终执行命令. 
git commit -m" remove bin folder all file out of control" //提交 git push origin master //提交到远程服务器 

此时git status看到 bin/目录状态变为untracked

可以修改.gitignore文件 添加bin/并提交.gitignore文件到远程服务器,这样就可以不对bin目录进行版本管理了。

以后需要的时候,只需要注释.gitignore#bin/内容,重新执行git bin/,即可重新纳入版本管理。

免责声明:文章转载自《git如何移除某文件夹的版本控制》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇《图解 HTTP》 摘要一vue+vant+js实现购物车原理小demo(基础版)下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

问题: 查看某个文件的修改记录| git log 高级用法

参考文章: git查看某个文件的修改历史 5.3 Git log 高级用法 基本步骤 git log --pretty=oneline [文件名] git show [节点] git log 两周高级用法结合在一起就能找到想要的 自定义提交的输出格式 --online: 每个提交压缩到一行, 只显示id和提交信息第一行 --decorate: 显...

Git--删除远程仓库文件但不删除本地仓库资源

我们在使用idea开发的过程中经常会出现新建项目的时候直接把xxx.iml文件也添加到了git trace 当然这并不会出现什么问题,问题是当我们把xxx.iml文件push到我们github上之后,然后在另一台电脑上pull了下来会出现一些问题,因为xxx.iml文件不是项目的源码。也就是说对于导入项目来说是多余的。 正规的源码目录:   src/   ...

MAC下MAMP安装php扩展教程记录

1.官网下载所对应的php 版本http://php.net/get/php-5.3.29.tar.gz/from/a/mirror 2.解压 找到需要的扩展目录 例如我要的是shmop cd ~/Downloads/php-5.3.29/ext/shmop 3.执行你所用php版本的phpize 而不是默认的 /Applications/MAMP/bin...

基于Docker构建安装Git/GitLab,以及制作springboot工程镜像

今天给大家分享的是《领先的开源自动化服务器Jenkins的应用实战》之基于Docker安装构建Git/GitLab版本控制与代码云存储的场所;使用Git管理项目,springboot工程制作镜像知识体系,欢迎大家一起阅读! Git/GitLab版本控制与代码云存储的场所   免费开源的分布式版本控制系统 本地离线存储:绝大多数操作都只需要访问本地文件和资源...

supervisor的command执行两条命令

如下supervisor的进程的comand配置参数只能写一个命令 1、要执行多条命令,可以写个sh文件包含多条命令,然后sh -x xxxx.sh,但这样又多了一个文件, 2、把所有命令放在字符串,然后用eval来执行,这样在shell窗口可以执行,但放在supervisor报找不到eval命令。比如: command = eval "python -u...

pg_upgrade 升级数据库方式一 拷贝文件

os: centos 7.4 postgresql: old 9.1 postgresql: new 9.6 pg_upgrade 是postgresql 大版本升级的得力工具。主要有两种用法: 1、使用pg_upgrade**拷贝**升级。 2、使用pg_upgrade**链接**升级。 网上搜索说 “拷贝升级虽然耗时长,但是原库还可以用。链接升...