超详细Git的基本命令使用(三)

😀前言

本篇博文是关于Git的基本命令使用,希望你能够喜欢

🏠个人主页:晨犀主页

🧑个人简介:大家好,我是晨犀,希望我的文章可以帮助到大家,您的满意是我的动力😉😉

💕欢迎大家:这里是CSDN,我总结知识的地方,欢迎来到我的博客,感谢大家的观看🥰

如果文章有什么需要改进的地方还请大佬不吝赐教 先在此感谢啦😊

Git基本命令使用(接上篇)

  1. 然后查看状态及执行提交命令

    cpp 复制代码
    git statusgit push origin master
  2. 合并出现问题需要手动修改

    cpp 复制代码
    git diff branch1 branch2 --stat //显示出所有有差异的文件列表 
    git diff branch1 branch2 文件名(带路径) //显示指定文件的详细差异 
    git diff branch1 branch2 //显示出所有有差异的文件的详细差异
  3. 编辑有冲突的文件(只修改被合并的分支文件),删除特殊符号,决定要使用的内容

  4. 我们可以用 git add 要告诉 Git 文件冲突已经解决

    cpp 复制代码
    git add 文件名 //添加缓存区 
    git status -s //状态码解析,会显示如: M runoob.php 
    git commit -m "修改后" //重新提交

    状态码含义:

    A: 你本地新增的文件(服务器上没有).

    C: 文件的一个新拷贝.

    D: 你本地删除的文件(服务器上还在).

    M: 文件的内容或者mode被修改了.

    R: 文件名被修改了。

    T: 文件的类型被修改了。

    U: 文件没有被合并(你需要完成合并才能进行提交)。

    X: 未知状态(很可能是遇到git的bug了,你可以向git提交bug report)

    ?:未被git进行管理,可以使用git add file1把file1添加进git能被git所进行管理

  5. 错误回滚

csharp 复制代码
#push前回滚
 --mixed 想保留本地修改,也想撤销commit 可以使用(默认--mixed)
git reset --mixed HEAD^
--soft 仅仅撤销 commit 
git reset --soft HEAD^
#--hard 全部撤销了,包括本地修改
git reset --hard HEAD^ 
git reset HEAD^                   //此时代码保留,回到 git add 之前(默认--mixed)
git reset --hard HEAD^            //回到最新的一次提交
git reset --hard HEAD~3           //回退上上上一个版本  
git reset --hard origin/master    //将本地的状态回退到和远程的一样 
#HEAD 说明:
#HEAD 表示当前版本
#HEAD^ 上一个版本
#HEAD^^ 上上一个版本
#HEAD^^^ 上上上一个版本
#以此类推...

#可以使用 ~数字表示

HEAD~0 表示当前版本
HEAD~1 上一个版本
HEAD^2 上上一个版本
HEAD^3 上上上一个版本
以此类推...
#push后回滚
#方式一
git revert HEAD             //撤销最近1次commit
git log                     //得到你需要回退一次提交的commit id
git revert <commit_id>      //回滚到指定版本
git push origin master      //提交回滚后的版本
#方式二
git log                           // 得到你需要回退一次提交的commit id
git log --oneline                 //查看简洁版本
git reset --hard                  // 回到其中你想要的某个版本
git push origin master -f         //强制提交一次,之前错误的提交就从远程仓库删除
git reset 和git revert区分
#revert是放弃指定提交的修改,但是会生成一次新的提交,需要填写提交注释,以前的历史记录都在;
#reset是指将HEAD指针指到指定提交,历史记录中不会出现放弃的提交记录。 
#删除某次提交
git log --oneline          //显示<commit_id>日志
git rebase -i <commit_id>  //删除<commit_id>次提交

20、git标签

如果你达到一个重要的阶段,并希望永远记住那个特别的提交快照,你可以使用 git tag 给它打上标签。

如一个重要版本出现,如稳定版,标签可以帮你快速定位到.

cpp 复制代码
#一. 创建一个标签 
git tag -a <tagname>               // 创建一个标签
  git tag -a <tagname> -m "说明文字"   //创建一个标签带说明
    
如果我们忘了给某个提交打标签,又将它发布了,我们可以给它追加标签。
 git tag -a v0.9 <commit_id>             //<commit_id>代表最后一次的commit id
  git log --oneline --decorate --graph    //查看是否追加成功
    
列出标签
git tag                        //查看所有标签
git tag -n                     //列出标签和说明

删除标签:
git tag -d 标签名
git tag -d v1.0.1
    
删除远程标签(Git1.7版本以后):
git push origin --delete tag

21、打包所有文件

打包master分支的所有文件:

csharp 复制代码
git archive --format=zip --output master.zip master

其中,输出格式为zip,输出文件为master.zip。git支持zip和tar两种输出格式。

打包当前分支当前HEAD的所有文件:

csharp 复制代码
 git archive --format=zip --output head.zip HEAD

打包v1.2标签的所有文件:

csharp 复制代码
git archive --format=zip --output v1.2.zip v1.2

三. 推送标签

  1. 推送指定标签:
cpp 复制代码
git push origin v1.0.0
  1. 一次性推送全部尚未推送到远程的本地标签:
cpp 复制代码
git push origin --tags

四. 获取指定tag代码

第一步:切换到指定标签,提示你当前处于一个"detached HEAD" 状态,因为 tag 相当于是一个快照,是不能更改它的代码的

cpp 复制代码
git checkout v1.0.0

第二步:如果要在 tag 代码的基础上做修改,你需要一个分支

cpp 复制代码
git checkout -b branch_name tag_name

第三步:切回到之前的HEAD指向(以master为例)

cpp 复制代码
git checkout master

文章到这里就结束了,如果有什么疑问的地方请指出,诸大佬们一起来评论区一起讨论😁

希望能和诸大佬们一起努力,今后我们一起观看感谢您的阅读🍻

如果帮助到您不妨3连支持一下,创造不易您们的支持是我的动力🤞

相关推荐
科研前沿1 天前
镜像视界 CameraGraph™+多智能体:构建自感知自决策的全域空间认知网络技术方案
大数据·运维·人工智能·数码相机·计算机视觉
发哥来了1 天前
AI视频生成模型选型指南:五大核心维度对比评测
大数据·人工智能·机器学习·ai·aigc
发哥来了1 天前
AI驱动生产线的实际落地:一个东莞厂商的技术选型实录
大数据·人工智能·机器学习·ai·aigc
AC赳赳老秦1 天前
知识产权辅助:用 OpenClaw 批量生成专利交底书 / 软著申请材料,自动校验格式与内容合规性
java·人工智能·python·算法·elasticsearch·deepseek·openclaw
历程里程碑1 天前
4 Git远程协作:从零开始,玩转仓库关联与代码同步(带实操代码讲解)
大数据·c++·git·elasticsearch·搜索引擎·gitee·github
苍煜1 天前
MySQL分库分表和ES到底怎么选?
数据库·mysql·elasticsearch
AI周红伟1 天前
周红伟:运营商一季度净利集体下滑 Token运营提速
大数据·网络·人工智能
无忧智库1 天前
研发管理的下一个十年:当多Agent协同遇上知识图谱,传统项目管理体系正在被颠覆(WORD)
大数据·人工智能·知识图谱
汽车仪器仪表相关领域1 天前
Kvaser Memorator Professional 5xHS CB:五通道CAN FD裸板记录仪,赋能多总线系统集成测试的旗舰级核心装备
大数据·网络·人工智能·单元测试·汽车·集成测试
金銀銅鐵1 天前
[git] 浅解 git reset 命令
git·后端