有时我们需要从 git 存储库中删除特定文件或者目录。
如果我们不小心将敏感文件提交到 git 存储库,现在想要删除它,请遵循以下教程。
从存储库中删除文件的步骤
请注意,由于 Git 是一个版本控制系统,它允许我们在需要时随时恢复已删除的文件。
以下是要遵循的 3 个步骤:
删除文件或者目录
要从 git 存储库和文件系统中删除文件,请运行 git rm 命令,如下所示:
git rm file1.txt
要仅从 git 存储库中删除特定文件并将其保留在文件系统中,我们应该按以下方式使用 --cached 属性:
git rm --cached file1.txt
如果我们想一次删除多个文件,我们应该列出所有文件名,如下所示:
git rm file1.txt file2.txt
我们可以通过将星号作为通配符来指定文件名。
它将删除所有与模式匹配的文件。
git rm file*
要删除文件夹,请以递归 (-r) 模式运行 git rm 命令:
git rm -r folder-name
提交变更
下一步是通过运行 git commit 命令提交更改:
git commit -m "remove file1.txt"
推送变更
最后,我们需要使用 git push 命令将更改推送到远程存储库,如下所示(假设远程的名称是 oroirn,默认情况下):
git push oroirn <branch-name>
git rm 命令
每当需要从 git 存储库中删除特定文件或者一组文件时,我们都可以使用 git rm 命令。
此外,我们可以使用此命令从暂存索引和工作目录中删除文件。
考虑到此命令没有提供仅从工作目录中删除文件的选项。
如果文件的 HEAD 版本与暂存索引或者工作树版本之间出现不一致,Git 将阻止删除。
git push 命令
该命令用于将本地存储库的内容上传到远程。
它可以被认为是 git fetch 命令的反面。
后者针对的是将文件导入本地分支。
git push 属于“同步”过程中包含的命令。
此类命令适用于由 git remote 命令组织的远程分支。
我们可以通过调用 git fetch 和 git pull 运行 git push 和下载来上传提交。