git撤销相关操作
·
1. git删除最近一次提交包括历史记录。
方法一:删除最近的一次提交(最常见)
如果你只是想撤销最后一次提交,这是最简单的方法。
在本地删除提交 使用 git reset --hard 命令,将你的本地分支回退到上一次提交。Bash
- git reset --hard HEAD^
HEAD^指的是 HEAD 的父提交,也就是上一次提交。--hard选项会彻底删除这次提交的所有更改,包括工作区中的文件修改。如果你只想保留文件修改,可以使用--soft。
- 强制推送到 GitHub 现在你的本地分支已经没有了最新提交,你需要强制推送到远程仓库,以覆盖掉之前的历史。
- git push --force origin <branch-name>
- 请将
<branch-name>替换为你正在工作的分支名(例如main或dev)。 --force告诉 Git 忽略历史不一致的警告,强制用你的本地历史覆盖远程历史。
- 请将
2. git取消已提交文件关联
你想从 Git 仓库中删除文件并取消其关联,虽然该文件已经添加到了 .gitignore 文件中,但文件已经被 Git 追踪了,所以需要通过一些额外的步骤来将它从版本控制中移除。
步骤:
-
确保文件已经添加到
.gitignore中:
首先,确认你已经将该文件的路径添加到.gitignore中。例如:# 在 .gitignore 中加入文件 path/to/your/file -
从 Git 中删除该文件:
使用git rm命令将文件从 Git 的版本控制中移除。请注意,这将删除该文件的历史记录,并且不会影响本地文件。执行以下命令:
git rm --cached path/to/your/file-
--cached参数确保文件仅从 Git 追踪中移除,而不会在本地文件系统中删除它。 -
path/to/your/file替换为你要取消关联的文件的路径。
-
-
提交更改:
文件已从 Git 的版本控制中移除,你需要提交这个更改。git commit -m "Remove file from Git tracking and add to .gitignore" -
推送到远程仓库:
最后,将更改推送到远程仓库。git push origin <your-branch>记得替换
<your-branch>为你实际的分支名,例如main或master。
总结:
-
将文件添加到
.gitignore中。 -
使用
git rm --cached命令将文件从 Git 追踪中移除。 -
提交并推送更改。
这样,Git 将不再追踪该文件,但它会保留在你的本地文件系统中。如果将来你再需要将该文件重新纳入 Git 版本控制,只需删除 .gitignore 中的相关项并使用 git add 重新添加即可。
更多推荐



所有评论(0)