github在版本库中删除某个文件的所有历史记录

github的目的就是版本控制,记录每一个版本的变动。然而有的时候我们往往希望从版本库中彻底删除某个文件,不再显示在历史记录中。例如不小心上传了一堆错误的文件,或者不小心上传了帐号、密码,那么这个时候怎么办呢?下面的命令可以完美解决你的问题;

1 git filter-branch -f --tree-filter ‘rm -rf vendor/gems‘ HEAD
2 git push origin --force
时间: 2024-10-10 13:34:20

github在版本库中删除某个文件的所有历史记录的相关文章

git 忽略提交某个指定的文件(不从版本库中删除)

执行指令: 1 2 [[email protected] demo]$ git update-index --assume-unchanged config.conf [[email protected] demo]$ git status 此时忽略config.conf文件跟踪之后再查看状态,发现已经没有显示config.conf的状态了. 附取消忽略指令: 1 [[email protected] demo]$ git update-index --no-assume-unchanged c

删除本地git版本库中受版本控制的文件

某些情况下,我们可能想得到一个干净的目录,比如说,我的源代码已经全部提交到服务器的版本库中了,本地的源代码我想删除掉,但是可能源码目录下有一些我们自己的配置.数据等文件,这些文件又不是受版本控制的,如果整个源码目录删除的话,这些文件也会一起删除了! 如果要本地硬盘中, 某个git源码目录下受版本控制(tracked files)的文件,留下未受版本控制的文件(untracker files),可以用以下指令: git ls-files | xargs rm 运行上述指令后,手动删除 .git 目

Git学习笔记01 从GitHub克隆版本库

步骤一  首先你得有个GitHub帐号 GitHub是为数不多没有被墙的国外技术网站之一,码农之友. 如果要进一步学习Git与远程版本库之间的操作,这一步是必须做的.当然,如果有GitLab帐号也是同样的道理. 具体怎么注册,我想搞技术的你应该没有问题.由于是纯英文的教程,真的不明白,可以问问度娘. 跟着教程创建属于你自己的版本库,到这里你就迈出了Git之旅的第一步.喝彩! 步骤二  生成SSH连接密钥 本教程不使用HTTPS(HTTP Security)协议,而是使用更为安全的SSH(Secu

Git 工作区、版本库中的暂存区和版本库之间的关系

下图展示了 工作区.版本库中的暂存区和版本库之间的关系: 1. 理解 Git 暂存区 (stage) 在版本库 .git 目录下有一个 index 文件,下面针对这个文件做一个有趣的试验.要说明的是:这个试验用 1.7.3 版本的 Git 进行的,低版本的 Git 因为没有针对 git status 命令进行优化设计,需要运行 git diff 命令才能看到 index 文件的日期戳变化,具体操作步骤如下. (1) 首先执行 git checkout 命令(后面会介绍此命令),撤销工作区中 we

AVAudioPlayer播放音乐文件及读取ipod库中的音乐文件

下面是ipad上的调试效果 下面是代码,代码中都有注释: #import <UIKit/UIKit.h>  #import <AVFoundation/AVFoundation.h>  #import <MediaPlayer/MediaPlayer.h>   @interface RootViewController : UIViewController <AVAudioPlayerDelegate> {     AVAudioPlayer *player

可视化webpart基础开发——TreeView控件读取文档库中的所有文件夹和文件(递归方法读取)

可视化webpart基础开发——TreeView控件读取文档库中的所有文件夹和文件(递归方法读取) 分类: SharePoint2011-12-23 14:44 1584人阅读 评论(0) 收藏 举报 文档sharepointurl测试stringforms 可视化webpart基础开发——TreeView控件读取文档库中的所有文件夹和文件(递归方法读取) 1.在部署的sharepoint网站中新建一个名为“测试文档库”的文档库,并添加各级的子文件夹和子文件,用于测试 2.在VS2010中新建空

SVN Error: “&#39; &#39;x&#39; isn&#39;t in the same repository as &#39;y&#39; ” during merge (并不在同一个版本库中)

在使用svn merge命令报错 英文版本:SVN Error: “' 'x' isn't in the same repository as 'y' ” during merge 中文版本报错:并不在同一个版本库中 如果你使用的是中文版本,那你就悲剧了,跟我一样,Google.百度都搜不到答案 不过现在不用担心,我费劲九牛二虎之力找到答案了,非常恶心的一个小问题: Questions: I get the error svn: 'x' isn't in the same repository

【原创】Git删除暂存区或版本库中的文件

0 基础 我们知道Git有三大区(工作区.暂存区.版本库)以及几个状态(untracked.unstaged.uncommited),下面只是简述下Git的大概工作流程,详细的可以参见本博客的其他有关Git的文章[链接]. (1)打开你的项目文件夹,除了隐藏的.git文件夹,其他项目文件位于的地方便是工作区,工作区的文件需要添加到Git的暂存区(git add),随后再提交到Git的版本库(git commit). (2)首次新建的文件都是untracked状态(未跟踪),此时需要git add

如何获取媒体库中所有音频文件信息,并在文件增删后及时更新媒体库

在4.4版本之前,我们可以使用发送广播的方式,强制刷新多媒体库 IntentFilter intentFilter = new IntentFilter( Intent.ACTION_MEDIA_SCANNER_STARTED); intentFilter.addAction(Intent.ACTION_MEDIA_SCANNER_FINISHED); intentFilter.addDataScheme("file"); sendBroadcast(new Intent(Intent