Git 实用技巧(按场景汇总)回退历史、新建空白分支等
本文最后更新于 2024年4月16日 晚上
git version 2.39.2.windows
1. 回退到历史 commit
回退分支历史是一个敏感的操作,需要小心谨慎。最好在备份、团队协商和测试的基础上进行操作,以避免不必要的问题。
将本地和远程分支回退到历史 commit 的过程涉及使用 Git 的命令来修改分支历史。请注意,在执行这些操作之前,务必备份你的代码,以防发生意外情况。以下为一般步骤:
查找历史 commit 的哈希值:使用
git log
命令查看提交历史并找到目标 commit 的哈希值创建备份分支(可选): 在执行任何回退操作之前,使用命令:
git branch backup-branch
创建一个分支来备份当前的状态本地分支回退: 使用以下命令将本地分支回退到历史 commit:
1
git reset --hard <commit-hash>
替换
<commit-hash>
为你想要回退到的历史 commit 的哈希。(!谨慎操作)远程分支回退: 强制推送(force push)本地分支更新远程分支(要求回退):
这将会覆盖远程分支的历史,可能会影响团队中其他人的工作,所以要小心使用。
1
git push origin <branch-name> --force
2. 修改远程仓库地址
修改远程仓库地址可能会影响团队协作,需要谨慎操作。
在实际开发工作中,可能会由于远程仓库迁移等原因导致我们需要修改远程仓库的地址,以下为具体步骤:
1 |
|
3. 新建空白分支
参考:Git - git-switch Documentation: https://git-scm.com/docs/git-switch/zh_HANS-CN
使用 --orphan
参数,创建一条不基于任何现有提交的空白分支。其初始提交(即 HEAD)不指向任何父提交,从而形成一个独立的、空的历史记录。
1 |
|
4. 从 Git 中停止追踪「被追踪的文件」
若误将 .idea
, .vscode
中的本地配置文件添加到 git 中,会导致每次编译时,IDE 会提示 git 修改。为了减少/消除提示,需要将该文件取消追踪,但不能将其从本地删除,以取消对 workspace.xml
文件的追踪为例:
停止追踪文件
1
git rm --cached .idea/workspace.xml
更新
.gitignore
文件,添加.idea/workspace.xml
提交更改
1
2git add .
git commit -m "Update .gitignore"
5. 重命名分支
例如将 mian 分支重命名为 astrowind
1 |
|
如果需要把改动推送到远程仓库,请执行以下命令
1 |
|
- ID: B2-V5+1.0.0
- 原文:https://blog.cc01cc.cn/2024/04/15/practical-skills-for-git/
- 署名:零一/cc01cc(zeo): https://github.com/cc01cc/
- 本作品采用署名-相同方式共享 4.0 国际(CC BY-SA 4.0 DEED)许可证进行许可,转载请标明源地址,谢谢