如果你已经把一个文件夹提交到了 Git 仓库中,但是后来发现这个文件夹不应该被提交,可以按照以下步骤排除已提交的文件夹:
在文件夹的根目录下创建一个名为 .gitignore 的文件。
编辑 .gitignore 文件,添加需要排除的文件夹的名称,以及其他需要排除的文件或文件类型,每个名称占一行。
执行以下命令,将 .gitignore 文件提交到 Git 仓库中:
git add .gitignore git commit -m "Add .gitignore file"
执行以下命令,从 Git 仓库中删除已提交的文件夹:
git rm -r --cached path/to/folder
- 其中
path/to/folder
是需要排除的文件夹的路径。 - 执行以下命令,将修改提交到 Git 仓库中:
git add . git commit -m "Exclude folder from Git repository"
现在,已提交的文件夹将被排除在 Git 仓库之外,只会出现在本地文件系统中,而不会影响 Git 仓库的状态。
示例
$ echo '.idea' >> .gitignore $ git rm -r --cached .idea $ git add .gitignore $ git commit -m '(some message stating you added .idea to ignored entries)' $ git push
其他示例
git init: 初始化一个 Git 仓库。
场景:在一个新项目中创建一个 Git 仓库时使用。
示例:在命令行终端中进入新项目的根目录,输入 git init 命令即可初始化一个 Git 仓库。
git clone: 克隆一个远程仓库到本地。
场景:在本地创建一个已经存在的远程仓库的副本时使用。
示例:假设远程仓库的地址为 https://github.com/username/repo.git,则在命令行终端中输入 git clone https://github.com/username/repo.git 命令即可将远程仓库克隆到本地。
git add: 将文件添加到暂存区。
场景:将工作目录中的文件添加到 Git 仓库中时使用。
示例:假设要将文件 file.txt 添加到 Git 仓库中,则在命令行终端中输入 git add file.txt 命令即可将该文件添加到暂存区。
git commit: 将暂存区的文件提交到本地仓库。
场景:将暂存区中的修改提交到本地仓库时使用。
示例:假设已经将文件 file.txt 添加到暂存区中,需要将其提交到本地仓库,则在命令行终端中输入 git commit -m "Add file.txt" 命令即可将修改提交到本地仓库。
git push: 将本地仓库的修改推送到远程仓库。
场景:将本地仓库的修改推送到远程仓库时使用。
示例:假设已经将本地仓库的修改提交到了本地分支 main,需要将其推送到远程仓库,则在命令行终端中输入 git push origin main 命令即可将修改推送到远程仓库。
git pull: 从远程仓库拉取最新的修改到本地仓库。
场景:从远程仓库获取最新的修改,以便在本地仓库中进行开发时使用。
示例:假设远程仓库的地址为 https://github.com/username/repo.git,本地分支为 main,则在命令行终端中输入 git pull https://github.com/username/repo.git main 命令即可从远程仓库拉取最新的修改到本地仓库。
git branch: 查看分支信息。
场景:查看当前仓库中的分支信息时使用。
示例:在命令行终端中输入 git branch 命令即可查看当前仓库中的分支信息。
git checkout: 切换分支或恢复文件。
场景:切换到其他分支或者恢复被修改的文件时使用。
示例:假设要切换到分支 dev,则在命令行终端中输入 git checkout dev 命令即可切换到分支 dev。如果要恢复被修改的文件 file.txt,则在命令行终端中输入 git checkout file.txt 命令即可恢复该文件。
git merge
: 合并分支。
场景:将两个分支合并成一个分支时使用。
示例:假设要将分支 dev 合并到分支 main 中,则在命令行终端中先切换到分支 main,然后输入 git merge dev 命令即可将分支 dev 合并到分支 main 中。
git status: 查看当前仓库的状态。
场景:查看当前仓库的状态,以了解哪些文件被修改、哪些文件被添加到暂存区等。
示例:在命令行终端中输入 git status 命令即可查看当前仓库的状态。
git log: 查看提交历史。
场景:查看当前仓库的提交历史。
示例:在命令行终端中输入 git log 命令即可查看当前仓库的提交历史。
git reset: 恢复到某个提交状态。
场景:将仓库恢复到某个提交状态时使用。
示例:假设要将当前仓库恢复到提交哈希值为 abcdefg 的提交状态,则在命令行终端中输入 git reset --hard abcdefg 命令即可将仓库恢复到该提交状态。