git实战技巧-如何将暂存区的多个功能代码分成多次提交

本文详细介绍了如何使用Git进行分批提交,包括通过IDEA工具和命令行方式。在IDEA中,可以通过选择性提交不同天的代码变更;在命令行下,利用交互式窗口(`git add -i`)来管理暂存区,删除不需要提交的文件。通过这种方式,可以更精确地控制每次提交的内容,确保提交历史的清晰。文章还提供了具体的步骤演示,帮助读者掌握这一操作技巧。
摘要由CSDN通过智能技术生成

1、解决思路

  当前git情况:

  通过idea工具,比较简单,但依赖工具

  通过原生命令,稍稍复杂些,但不依赖其它工具

  如果文件很多,通过交互式窗口选择比较麻烦的情况下 也可以使用命令清空暂存区, 然后在有选择的

  `add + commit`

  ```

  git rm --cache [fileName] 删除暂存区文件的指定文件(本地工作区未删除)

  ```

  2、动手实践

  基于idea工具解决

  > 点击提交代码

  >

  > Default Channgelist 变更清单中,只勾选第一天的变更代码

  >

  > 填写提交信息,点击commit提交

  >

  > 完成频道管理commit提交

  > 再次点击提交代码

  >

  > Default Channgelist 变更清单中,勾选第二天的变更代码

  >

  > 填写提交信息,点击commit提交

  >

  > 完成敏感词管理commit提交

  > 点击下方git : log日志 查看

  两次commit提交记录

  基于git命令行解决

  > 输入 `git add -i` 进入暂存区交互式窗口

  ```

  1. 暂存区的文件路径及提交情况

  2. 要交互执行的命令

  1. status: 暂存区状态 和 git add -i 效果类似

  2. update: 可以将已经tracked的文件添加到暂存区

  3. revert: 可以根据提示选择,将暂存区文件删除

  4. add untracket: 可以将未跟踪tracked的文件添加到暂存区

  5. patch: 用于离线打补丁,通过代码版本

  6. diff: 对比暂存区文件 和 仓库源文件差异

  7. quit: 退出交互式窗口

  8. help: 查看帮助

  3. what now: 你现在要做什么呢?

  输入上面指令对应的数字 或 首字母 即可执行对应指令

  ```

  > `what now>>` 输入 `3` 回车

  ```

  弹出暂存区文件列表

  并且下面的命令行窗口 提示: revert>>

  我们可以按要求输入 文件的编号,多个文件以空格隔开

  这些文件,是要从暂存区删除的哦

  比如:

  现在要提交 频道管理的代码, 那么先把敏感词的代码从暂存区删除

  敏感词对应的文件编号: 2 4 6 8 10

  ```

  > `revert>>` 输入 `2 4 6 8 10` 回车

  ```

  弹出暂存区文件列表

  选择revert的文件编号前,有 * 号标记

  再次回车 这些文件 会从暂存区删除

  ```

  > `revert>>` 回车

  ```

  敏感词相关文件,已经变为 untracked 未跟踪状态

  ```

  > `what now` 输入 1 (查看状态)

  ```

  暂存区中,只剩下频道管理的代码

  这时退出交互窗口 commit 提交代码 就可以了

  ```

  > `what now` 输入 7 退出交互窗口

  > 输入`git commit -m '功能:开发完成频道管理CRUD'`

  ```

  完成频道管理模块代码提交

  ```

  > 输入`git add .` 将敏感词代码再次提交到暂存区, 并查看`git status`

  > 输入`git commit -m '功能:开发完成敏感词管理CRUD'`

  > 输入`git log`查看提交记录

  ```

  暂存区的代码,已经分为两次commit啦

  ```

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值