💡知行合一.🐬|

BaldButStrong

园龄:2年10个月粉丝:2关注:0

📂其他
🔖git
2024-10-24 09:38阅读: 20评论: 0推荐: 0

git 小技巧

一、git 撤回或修改之前提交并且不影响 被撤回或修改提交之后的提交信息操作

1. 首先将指定分支克隆下来并备份
git clone -b xxx httpxxxxx // xxx 分支名
cp xxx xxx_backup
2. 先备份对应提交的patch 并移动到别的目录中,防止后续git reset 的时候清掉
git format-match commitid -1
mv ./0001xxxxx.patch ../
3. 回退到要撤回或修改的提交的前一个提交
git log // 查看提交号
commit id4
xxx
commit id3
xxx
commit id2
xxx
commit id1
xxx
…………
// 假如要撤回或修改的为comit id2,则先退到commit id1
git reset --hard id1
// 若修改提交,可以将之前备份的patch先打上去
git apply ../0001xxx.patch
// 若要更改提交人信息 设置git配置
git config user.name "YourName"
git config user.email "xxxx@highgo.com"
// 进行提交
git commit -m "xxxx"
// 将修改提交的后续提交接入
git cherry-pick id3^..id4 // 指定一段连续的提交接入当前提交下,左值为较为旧的提交,右值为较为新的提交
// 最后 push 到指定的分支xxx, 一般push是会拒绝提交,加上-f 就可以,但是-f 慎用
git push origin xxx -f

二、其他git小技巧

1. 显示该文件夹及其内部文件的所有提交记录简要信息
git log --oneline
2. 每次提交中具体修改了哪些文件
git log --name-status
3. 每次提交的详细内容变化
git log -p
4. 某几行的历史提交信息
git blame -L start,end
5. --recursive 一起克隆子库,等价于先克隆主库在进入主库目录中git submodule update --init等命令克隆子库, --depth只克隆下来指定数量的提交记录
git clone --recursive https://github.com/xxxx --depth=10

本文作者:supersimple

本文链接:https://www.cnblogs.com/supersimple/p/18498881

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   BaldButStrong  阅读(20)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起