gitee删除远程仓库某次提交记录

git提交记录全部删除 (idea操作版本)git提交记录全部删除 阅读详情
AI摘要

本文详细介绍了如何在git中安全地回滚远程仓库,包括删除最后一次提交、特定提交及修改提交的方法,以及注意事项。强调了权限管理和团队协作的重要性。,

转载地址:
http://blog.mtxcxin.cn/blog/git%E5%A6%82%E4%BD%95%E5%9B%9E%E6%BB%9A%E8%BF%9C%E7%A8%8B%E4%BB%93%E5%BA%93.html

转载地址:git 删除远程分支上的某次提交 - 知乎 

关于远程仓库回滚

首先,必须要明白的一件事,任何普通用户不能擅自做有关远程仓库回退的操作,如果你擅自回滚了远程仓库,会对项目团队其他人造成不可预知的影响。如果需要回退版本,先联系项目的仓库管理员,在团队其他人都对自己本地未提交的工作做好备份之后,再进行远程仓库回退操作,操作结束后,团队成员需要重新同步远程仓库后继续自己的工作。

通常回滚远程仓库会有以下三种情形:

1、删除最后一次提交

这种情况是最简单的了,只需要以下两步就可以了

git revert HEAD
git push origin master

注意,revert和reset的区别:

revert是放弃指定提交的修改,但是会生成一次新的提交,需要填写提交注释,以前的历史记录都在,而reset是指将HEAD指针指到指定提交,历史记录中不会出现放弃的提交记录。如果还没有理解的话,我们做如下测试:
假设我们有以下三次提交记录:

现在我们使用revert放弃最后一次提交,之后执行git log:

git revert HEAD
git log

历史记录中还有第三次提交的记录,并且多了一次的提交,但是仓库内容已经回到了第二次提交之后的状态。 现在我们使用reset回到第三次提交,之后执行git log:

git reset --hard HEAD^
git log

历史记录中已经没有之前revert生成的提交记录了,现在应该明白了吧。 如果删除远程仓库的最后一次提交的时候不需要保留历史记录的话,可以使用reset,命令如下:

git reset --hard HEAD^
git push origin master -f

-f 参数是强制提交,因为reset之后本地库落后于远程库一个版本,因此需要强制提交。

2、删除历史某次提交

这种情况需要先用git log命令在历史记录中查找到想要删除的某次提交的commit id,比如下图中圈出来的就是注释为”2”的提交的commit id(由此可见提交的注释很重要,一定要认真写)

然后执行以下命令(”commit id”替换为想要删除的提交的”commit id”,需要注意最后的^号,意思是commit id的前一次提交):

git rebase -i "commit id"^

执行该条命令之后会打开一个编辑框,内容如下,列出了包含该次提交在内之后的所有提交。

然后在编辑框中删除你想要删除的提交所在行,然后保存退出就好啦,如果有冲突的需要解决冲突。接下来,执行以下命令,将本地仓库提交到远程库就完成了:

git push origin master -f

3、修改历史某次提交

这种情况的解决方法类似于第二种情况,只需要在第二条打开编辑框之后,将你想要修改的提交所在行的pick替换成edit然后保存退出,这个时候rebase会停在你要修改的提交,然后做你需要的修改,修改完毕之后,执行以下命令:

git add .
git commit --amend
git rebase --continue

如果你在之前的编辑框修改了n行,也就是说要对n次提交做修改,则需要重复执行以上步骤n次。

需要注意的是,在执行rebase命令对指定提交修改或删除之后,该次提交之后的所有提交的”commit id”都会改变。

本帖只留作记录使用,如有侵权联系即删 

引自:git 删除远程的某次提交

git清除历史纪录 Git 是一种常用的版本控制工具,被广泛用于项目开发中。在项目开发的过程中,我们通常会使用各种 git 命令来进行版本控制和管理,其中包括提交代码,合并分支等操作。然而,在某些情况下,我们可能需要清除 Git 历史纪录,比如删除敏感信息或清除不必要的提交记录。下面我们将讨论如何清除 Git 的历史纪录。 阅读详情

相关推荐

Git 清除所有历史记录

1. 进入仓库,拉一个分支比如名为 latest_branch git checkout --orphan latest_branch –orphan 创建一个无任何历史记录的孤儿分支 2. 添加所有文件到上述分支并提交一次 git add -A git commit -am 'initial commit' 3. 删除 master 分支 git branch -D master 4. 更改当前分支为 master 分支 git branch -m master 5. 将本地所有更改 push

LeslieLiangZ的博客 1043

git提交远程后发现有隐秘数据也提交了,删除对应提交记录

当我们添加git数据到远程上,确发现我们配置文件中有秘密数据,提交以后别人就可以看到你提交的数据信息,并且就算把秘密去除在新的版本上也可以看到之前提交的数据与当前有那些不同,很显然这样的事情我们应该挽救,把之前历史提交给删除掉,保证数据不泄露,简单三步骤. 查看提交的历史记录,把要删除的的日志前面把改成 更改完成后,使用vim命令进行保存 查看历史记录已经删除了,大功告成!

Itmei的博客 2204

Git使用方法-删除github中的提交历史记录

【代码】删除github中的提交历史记录的操作步骤。

星霜笔记 702

如何安全删除 GitHub 提交记录及其操作步骤

提交记录 (Commit History): 每次提交代码时,Git 会生成一个提交对象,包含提交的变更、提交信息、提交时间和提交人等信息

码农研究僧的博客 2828

华为海思2026届数字IC秋招笔试高频考点解析与实战技巧(2025最新版)

本文深入解析华为海思2026届数字IC秋招笔试的高频考点与实战技巧,涵盖时序优化、低功耗设计、DFT规则等核心模块。针对2025年最新真题,提供详细的解题思路和工程经验,帮助考生高效备考。特别关注SystemVerilog约束随机测试等新增考点,助力考生在秋招笔试中脱颖而出。

m2n3o4p5的博客 415

PS2硬盘启动终极指南:从FMCB到OPL,告别光驱打造游戏博物馆

在计算机存储与数据读取领域,硬盘启动技术通过将操作系统或应用程序从本地硬盘直接加载,绕过了传统光驱等外部介质,实现了速度与可靠性的双重提升。其核心原理在于利用引导程序接管系统初始化流程,直接访问硬盘上的特定分区与文件镜像。这项技术的价值在于极大提升了数据读取效率、降低了物理介质损耗,并扩展了存储容量与管理的灵活性。在怀旧游戏硬件改造、嵌入式系统定制等场景中,硬盘启动技术被广泛应用,以实现老旧设备的功能焕新与性能优化。本文聚焦于索尼PS2游戏主机的硬盘启动方案,深入探讨了如何利用FMCB(Free MCBoo

weixin_34295316的博客 1777

Git中删除Gitee远程仓库中某个文件的提交记录

场景 配置文件中配置了用户名和密码等数据,但是将其给提交并推送到Gitee上去了。 此时再文件提交历史中就暴露了这些信息。 如何将远端该文件的提交记录删除掉。 注: 博客:霸道流氓气质的博客_优快云博客-C#,架构之路,SpringBoot领域博主 关注公众号 霸道的程序猿 获取编程相关电子书、教程推送与免费下载。 实现 1、首先在本地将该文件手动备份出一份,然后在本地打开git终端,删除该文件的提交记录 git filter-branch -f --index-filter 'git

BADAO_LIUMANG_QIZHI的博客 5775

SpringBoot实战——仿b站项目(一)

热部署就是当应用程序这种运行的时候升级冉家或者修改某一部分代码、配置文件时,无需手动启动应用,即可修改的部分生效工具 + IDEA配置。

weixin_52880572的博客 3456

使用git将代码提交到Gitee

记录一下流程,便于后面自己使用。

黄钢的博客 2万+

【Pico手势开发实战】基于SteamVR串流与MRTK3的跨平台交互方案

本文详细介绍了在Pico设备上,结合SteamVR串流与微软MRTK3框架,实现高效跨平台手势交互开发的完整方案。该方案通过在PC端运行Unity项目并串流至头显,利用MRTK3封装的手势识别与交互组件,大幅提升了开发调试效率与性能上限,并确保了未来向其他OpenXR设备的良好兼容性。

weixin_29001683的博客 217

104报文解析工具

可选择包含报文的文本文件或日志文件进行解析,可选择按条数范围或时间范围,输出结果可以在报文解析显示区,也可以输出到文件。可以对文本内容的报文文件进行高级分析,包括遥信遥测等通讯数据的具体信息,通讯帧的统计,通讯次数的统计,各种错误的分析,报文的定位功能,传输的文件具体内容等。输入完成后点击工具栏的解析报文按钮或使用右键菜单的解析就可以对报文进行解析。在报文输入区输入待解析报文并解析后,解析结果就显示在报文解析显示区和报文定位展示区及报文定位条目区。当有多条报文解析后,可以通过报文列表树具体定位某条报文。

XZHOUMIN的博客 5949

【Git】Git、Github学习记录

1.前言 GitHub 与 Git 的关系 Git Git 是一款免费、开源的分布式版本控制系统 Git是著名的 Linux 发明者 Linus Torvalds 开发 不管是学习 GitHub ,还是以后想从事编程行业,Git 都可以算是必备技能。 GitHub 主要提供基于 git 的版本托管服务。也就是说现在 GitHub 上托管的所有项目代码都是基于 Git ...

淹死的鱼 582

PostgreSQL+PostGIS实战:5分钟搞定Shapefile数据导入(附避坑指南)

本文详细介绍了如何使用PostgreSQL和PostGIS快速导入Shapefile空间数据,包括5分钟标准流程和常见问题解决方案。通过实战案例和避坑指南,帮助GIS工程师高效处理矢量数据导入中的编码、几何类型、坐标系等典型问题,提升空间数据库管理效率。

weixin_42565652的博客 400

gitee入门

由于个人对于git存放代码仓库的功能感到好奇,也想创建属于自己的仓库用于记录代码和学习笔记,所以写此片记录gitee学习的过程。本文撰写基于gitee(码云)的注册和代码提交【手把手】_哔哩哔哩_bilibili更加优秀的网址推荐:Git是什么 - Git教程 - 廖雪峰的官方网站gitee教程(超全,超详细,超长)-优快云博客首次撰写时间为:2025/3/28gitee是国内的基于Git的代码托管和研发协作开源平台(附链接开源软件 - Gitee.com。

Kxdbc的博客 1102

手把手教你用Cadence Virtuoso完成LNA全套仿真:基于SpectreRF手册的实战补充

本文详细指导如何使用Cadence Virtuoso和SpectreRF完成LNA的全套仿真,涵盖噪声仿真、增益压缩、THD分析及双音IP3测量等关键步骤。针对官方手册中的常见问题,提供了12个实战解决方案,包括hbnoise函数选择、双音信号源配置等,帮助工程师高效完成射频IC设计。

weixin_29102619的博客 523

STM32CubeMX之DAC产成正弦波

“在之前的文章中曾经介绍过用TIM产生PWM做DAC用,STM32定时器输出PWM做DAC。部分型号的STM32单片机内部有专用的DAC,本篇文章将介绍如何用内部DAC+DMA产生正弦波...

zhang062061的专栏 1513

【gitee】大文件无法push到远程仓库

git filter-branch --tree-filter 'rm -f 文件名' HEAD。# 删除大文件已提交到本地仓库的大文件的提交记录。超过100M的大文件无法直接push。#修改全局配置为500MB。将代码push到远程仓库。

WSSsharon的博客 554

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

Git因文件过大导致提交失败解决方案

作者信息、提交时间、提交说明等信息, 每个提交都有一个唯一的 SHA-1 校验和,用于标识该提交。Gitee托管平台对不同套餐的用户采用了不同的配额限制,详情可查阅。依次撤销已经commit但未push到远程的提交记录。git推送到远程时因个别文件过大导致推送失败。命令可查看历史提交信息,会显示提交记录的。为错误信息中给出的文件的哈希值。

時光的博客 2220

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

git拉下来的项目代码提交remote: [session-784e9fb9] Access denied异常

remote: [session-784e9fb9] Access denied异常解决

qq_51681068的博客 632

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

已经把 node_modules 提交并推送到 Gitee,怎么删掉(本地 + 远程仓库)

将 node_modules 从 Gitee 仓库中删除,需先添加 .gitignore 防止误提交。使用 git rm -r --cached node_modules 从追踪中移除但保留本地文件,再执行 git add .、git commit 并推送到远程。若需彻底清除历史记录(高风险,慎用),可使用 git filter-branch 强制重写历史并强制推送,但可能影响团队协作。建议优先采用第一种方式,避免冲突。

大剑师兰特的GIS世界 293

[ Linux ] git工具的基本使用(仓库的构建,提交)

2.打开Gitee,创建你的远程仓库,根据提示初始化本地仓库(这里以我的仓库为例)以上就是git的基本使用,有什么问题可以在评论区提出。新建好仓库之后跟着网页的提示初始化便可以了。3.add、commit、push三板斧。

2301_79175236的博客 552

git的使用和gitee

关于git和gitee的使用

m0_66039084的博客 283

git初体验—使用gitee上传虚拟机项目代码进行管理

一,创建gitee gitee网址:http://gitee.com/ 进入后按照提示注册自己的gitee账号: 创建成功并且登陆后点击创建我的仓库: 填写一些基本属性(路径中的unix将会作为虚拟机的文件夹): 将仓库地址复制: 在虚拟机下安装git: sudo apt-get install git 使用git clone命令让仓库放入虚拟机: git clone 仓库网址 输入ls命令可以看到unix文件夹仓库已经存在: 用cd命令跳...

qq_59580408的博客 4144

git相关知识

记录关于gitee提交项目 1. 创建仓库 2. 点击项目,右键选择git bash here 3. git init 初始化本地仓库 4. git remote add origin + 仓库地址。 5. git pull origin master。 6. git add . ——————>add后面有个小数点。提交所有 7. git commit -m "first commit"。添加描述 8. git push -u origin master 在上传的时候出现的问题

qq_45240573的博客 190

更换原仓库的git

git remote add origin 仓库地址。git commit -m '描述信息':新建仓库时不要点以下按钮,不然推送不了。关联到新的远程库地址。

weixin_48567232的博客 597

git入门学习

下载git网址:Git for Windows点击 Download等待下载完成即可。 打开gitee.com网站注册。 输入ssh-keygen -t ed25519 -C"xxx@xx.com"后回车三次获取ssh密钥 打开gitee点击头像进入个人空间,在安全设置中找到ssh公钥,将获取到的公钥复制进去。 选择一个java项目,在根目录中右键鼠标打开git bash进入命令行 git init 该指令可以创建一个代码仓库,创建后根目录自动创建.git文件夹 git add /..

qq_41252434的博客 133
上一篇: gitee 查找本地上传记录并恢复本地版本
下一篇: MapContext.eraseLines 路径规划回放擦除已走过路线
姜姜酱酱_
博客等级 码龄4年 20粉丝 7原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值