Om3*_*3ga 4 git github repository
我承诺,但没有推送到存储库,文件到分支,即abc.现在我想从这个分支中删除它abc.我怎样才能做到这一点?
我假设您想要从历史中删除该文件,就好像它从未存在过一样.如果您只是想在将来的提交中删除该文件,那么使用git rm my-bad-file.txt并忽略我的其余答案.
如果文件仅在最近的提交中,则最容易使用git rm my-bad-file.txt删除文件,然后git commit --amend编辑先前的提交.
如果有多个提交包含违规文件,则git filter-branch可能有用.
git filter-branch --index-filter 'git rm --cached --ignore-unmatch my-bad-file.txt' master..abc
Run Code Online (Sandbox Code Playgroud)
这意味着:
git filter-branch:让我们重写一些提交!
--index-filter:更改每个提交的索引,而不实际在磁盘上检查它.
'git rm --cached --ignore-unmatch my-bad-file.txt':对于每个提交,取消暂存名为"my-bad-file.txt"的文件(如果存在).
master..abc:在分支abc上的所有提交上执行此操作,返回到从master分支分支的位置.
| 归档时间: |
|
| 查看次数: |
824 次 |
| 最近记录: |