热门标签 | HotTags
当前位置:  开发笔记 > 开发工具 > 正文

Git实用技巧与操作指南

在开发过程中,为了确保代码的实时保存,我们常常会对某个功能进行多次提交。然而,当功能趋于稳定时,将这些分散的提交记录合并为一次提交,可以提高代码仓库的整洁度和可维护性。本文将详细介绍如何使用Git巧妙地合并多次提交记录,帮助开发者简化历史记录管理。

合并多次提交记录

有的时候我们对于某个功能为了实时保存自己写的代码,可能会有多次提交,所以等功能稳定下来,我们可能会有这种需求:将前面多余几次的提交记录合并为1个记录。幸运的是 Git 为我们提供了这样的命令。

有2种做法


  • 合并部分

    • git rebase -I HEAD~n。这里的 n 代表压缩最后n次提交。执行这条命令后会弹出 vim 编辑窗口,这 n 次提交记录会倒序,最上面的是最早的提交,最下面的是最新的提交。

    pick cc77998 ...
    pick 1821f6a ...
    ...
    pick 124422 ...

    我们需要修改第2到n行的 pick 为 squash,这个的意思为将最后n-1次的提交合并为1次提交。然后我们保存退出,git 会一个个压缩提交历史,如果有冲突则解决冲突就好。

    • 完成之后我们将本地的修改提交到远端。 Git push -f
  • 全部合并

    git rebase -i --root

    将全部的提交记录合并为1个


删除项目中所有的提交记录

之前个人在 Github 开源了一些完整的项目,但是有些人用于商业用途,所以有了这个需求,就是将项目改动一下,删除一些重要代码提交最新的代码到仓库并且让用户不能通过提交的历史记录会滚到指定的版本看到代码。
以下为步骤

1.Checkoutgit checkout --orphan latest_branch2. Add all the filesgit add -A3. Commit the changesgit commit -am "commit message"4. Delete the branchgit branch -D master5.Rename the current branch to mastergit branch -m master6.Finally, force update your repositorygit push -f origin master

给项目打 tag

git tag -a 1.0.0 -m 'release SPM lib'

推荐阅读
author-avatar
蓝云2602884825_944
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有