小白学Git(2)——Git管理修改

本文介绍了Git如何管理修改,包括将工作区的修改添加到暂存区,撤销提交,以及如何处理已添加到暂存区的修改。通过实例展示了git checkout、git reset等命令的使用,帮助理解Git的版本控制流程。
摘要由CSDN通过智能技术生成

上一节总结了一下git库下文件的创建与提交(小白学git——学会创建和提交),话不多说,接着来!

git 管理修改

上篇文章我们知道了git库的几个区,回顾一下:

这里写图片描述

就像图中这样,我们将工作区的文件或者修改提交到真正git库之前,我们需要先把文件或者修改添加到暂存区,放在暂存区的文件经过commit可以一次性全部都提交至git库

Talking is cheap,show me the code.

现在我们对index.txt做一点修改:

这里写图片描述

对,没错,你又长了十岁,成为了一个20岁如花似玉的大小伙子。

此时你找了个对象,什么?没有?那就new 一个好了:

touch girlfriend.txt

### 如何撤回已推送至远程仓库的Git提交 当需要撤回已经推送到远程仓库的 Git 提交时,可以采用几种不同的方法来处理这个问题。每种方式取决于具体的需求以及希望达到的效果。 #### 使用 `git revert` 命令安全撤销更改 如果只是想要取消某次特定提交所带来的改动而不影响其他历史记录,则推荐使用 `revert` 方法: ```bash git revert <commit-hash> ``` 这会创建一个新的提交来反向应用指定哈希值所代表的那个变更集[^1]。之后可以通过常规流程将这个新的提交再次推送给远程仓库。 #### 强制更新远程分支指针位置 (不建议频繁操作) 对于某些特殊情况下的错误提交(例如泄露敏感数据),可能需要用更激进的方式——重置本地分支并强制覆盖远端同名分支的状态: ```bash # 切换到目标分支 git checkout main # 将HEAD指向期望状态(比如上一次成功的tag或者某个具体的commit id) git reset --hard HEAD~N # N表示要回退多少个提交 # 推送改变给远程服务器,并且强行让其接受新版本的历史链路 git push --force-with-lease origin main ``` 需要注意的是,在执行上述命令之前应当充分评估风险;特别是带有 `--force` 参数的操作可能会破坏协作开发中的共享进度表结构,因此务必谨慎行事[^2]。 #### 创建补丁修正后再推送 另一种做法是在现有基础上继续构建改进型提交,通过这种方式间接实现“撤消”的效果: ```bash # 修改文件... git add . git commit -m "Fix issues introduced by previous commits" git push origin main ``` 这种方法的好处是不会破坏原有的提交历史,而是追加一条新的提交记录用于纠正之前的失误[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值