如何从存储库中删除“file1.txt”?
当前回答
这是我唯一的选择。
git filter-branch -f --index-filter 'git rm --cached --ignore-unmatch *.sql'
注意:用文件名或文件类型替换*.sql。要非常小心,因为这会经过每次提交并删除此文件类型。
编辑:注意-在这个命令之后,您将无法推或拉-您将看到拒绝“不相关的历史记录”,您可以使用“git push--force-u origin master”来推或拉
其他回答
删除特定文件
git-rm文件名
在一次快照中递归清理目录中所有未跟踪的文件
git-clean-fdx
首先,从本地存储库中删除文件。git rm-r文件名或者,只从本地存储库中删除文件,而从文件系统中删除文件git rm—缓存的文件名其次,将更改提交到本地存储库。gitcommit-m“不需要的文件或一些内联注释”最后,将本地更改更新/推送到远程存储库。数字推送
我有obj和bin文件,它们意外地进入了repo,我不想污染我的“已更改文件”列表
当我注意到他们去了遥控器后,我将其添加到.gitignore中,忽略了他们
/*/obj
/*/bin
问题是它们已经在远程,当它们被更改时,它们会弹出为已更改,并污染已更改的文件列表。
要停止查看它们,您需要从远程存储库中删除整个文件夹。
在命令提示中:
CD到repo文件夹(即C:\repo\MyRepo)我要删除SSIS\obj。似乎只能在顶层删除,因此现在需要将CD插入SSIS:(即C:\repo\MyRepo\SSSIS)现在输入魔法咒语git rm-r-f objrm=删除-r=递归删除-f=表示力,因为你真的是这么想的obj是文件夹现在运行gitcommit-m“删除obj文件夹”
我收到一条警告消息,说13个文件更改了315222个删除
然后,因为我不想查找CMD行,我进入Visual Sstudio并执行了同步,将其应用到远程
更一般地,git help至少可以帮助解决以下简单问题:
zhasper@berens:/media/Kindle/documents$ git help
usage: git [--version] [--exec-path[=GIT_EXEC_PATH]] [--html-path] [-p|--paginate|--no-pager] [--bare] [--git-dir=GIT_DIR] [--work-tree=GIT_WORK_TREE] [--help] COMMAND [ARGS]
The most commonly used git commands are:
add Add file contents to the index
:
rm Remove files from the working tree and from the index
首先,如果您使用git rm,特别是对于多个文件,请考虑任何通配符都将由shell解析,而不是由git命令解析。
git rm -- *.anExtension
git commit -m "remove multiple files"
但是,如果你的文件已经在GitHub上,你可以(从2013年7月起)直接从web GUI中删除它!
只需查看存储库中的任何文件,单击顶部的垃圾桶图标,然后像其他基于web的编辑一样提交删除操作。
然后在本地回购上“git pull”,这也会在本地删除文件。这使得这个答案成为从git repo中删除文件的(迂回)方式?(更不用说GitHub上的文件位于“git repo”中)
(提交将反映该文件的删除):
就这样,它消失了。有关这些功能的帮助,请务必阅读有关创建、移动、重命名和删除文件的帮助文章。注意:由于它是一个版本控制系统,如果您以后需要恢复文件,Git始终支持您。
最后一句话意味着删除的文件仍然是历史的一部分,您可以很容易地恢复它(但还没有通过GitHub web界面):
请参阅“在Git repo中恢复已删除的文件”。
推荐文章
- 如何设置一个git项目使用外部回购子模块?
- Git同时在两个分支上工作
- 如何在Visual Studio中删除未推送的外向提交?
- Git在两个不同的文件之间的差异
- 我如何使用vimdiff来解决git合并冲突?
- 如何将更改提交到另一个预先存在的分支
- 为什么使用'git rm'来删除文件而不是'rm'?
- 我如何安装imagemagick与自制?
- 致命:git-write-tree:错误构建树
- Git克隆远程存储库的特定版本
- git隐藏的意图用例是什么?
- 从远程Git存储库检索特定的提交
- 如何配置git bash命令行补全?
- 我如何迫使git拉覆盖每一个拉上的一切?
- 撤销“git add <dir>”?