码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • IDEA 使用


    目录

    • Git
      • .gitignore 不上传
      • 取消idea自动 add file to git
      • 撤销commit的内容
      • 本地已经有一个开发完成的项目,这个时候想要上传到仓库中

    Git

    .gitignore 不上传

    在项目根目录下创建 .gitignore 文件夹,并添加内容:

    .gitignore
    
    • 1






    取消idea自动 add file to git

    在core中添加如下内容,完成后当你尝试添加文件到Git仓库时,Git会再次提示你是否要添加文件。

    asktoadd = true
    
    • 1

    添加前:
    在这里插入图片描述
    添加后:
    在这里插入图片描述






    撤销commit的内容

    结论:

    • 自己开发的过程中,未Push,但已commit——》undo Commit ;Push,且已Commit ——》Reset Current Branch to Here
    • 生产过程中,快速回退——》Reset Current Branch to Here ;从某个结点新建分支回滚,排查问题——》 Revert Commit
    1. 我们先找到要回退的历史记录
    • 在这里插入图片描述
    • 在这里插入图片描述
    1. 选择我们要回退提交的记录
      在这里插入图片描述
      选中记录我们明显可以知道有三种方式:
    • Reset Current Branch to Here
    • Revert Commit
    • Undo Commit

    参考资料

    • IDEA 提交git 之后撤回操作
    • IDEA中使用git如何撤回commit的代码 (这个一定要看)
    • git 代码回滚 reset revert 详解 IDEA操作 4种reset区别 (这个一定要看)

    区别:

    “Reset Current Branch to Here”、“Revert Commit”和“Undo Commit”是Git中的三个不同的操作,它们的用途和效果如下:
    “Reset Current Branch to Here”操作是将当前分支的状态重置到指定的提交。这意味着可以将当前分支的代码库回溯到过去的某个版本,并且在这个版本之后的所有提交都将被清除。这个操作不会删除已经做出的更改,只是将它们从可追踪的历史记录中移除。

    效果:

    在这里插入图片描述
    在这里插入图片描述

    “Revert Commit”操作是创建一个新的提交来撤销之前的某个提交。这意味着撤销的更改将不再被包含在当前分支的历史记录中,但它们仍然存在于其他分支或备份中。使用Revert Commit,可以在保留所有后续提交的同时撤销之前的更改。

    效果:

    >
    在这里插入图片描述

    “Undo Commit”操作则是指将代码库回溯到早期的某个版本并清除在其之后的所有提交,与“Reset Current Branch to Here”类似。然而,“Undo Commit”不仅会清除历史记录,还会删除所有未提交的更改。这意味着任何未提交的更改都将丢失,无法恢复。

    效果:
       就是只回滚了本地的资源,我们修改完之后,再次上传会产生冲突,因为此时我们本地的记录head头和远程不一样。

    在这里插入图片描述
    在这里插入图片描述

    1. Reset Current Branch to Here (解决快速回退指定版本推荐)
    • IDEA 提交git 之后撤回操作
    • IDEA中使用git如何撤回commit的代码 (这个一定要看)
    • git 代码回滚 reset revert 详解 IDEA操作 4种reset区别 (这个一定要看)

    获取版本信息
    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    HEAD^ 表示上一个版本,即上一次的commit,几个^代表几次提交,如果回滚两次就是HEAD^^。
     
    也可以写成HEAD~1,如果进行两次的commit,想要都撤回,可以使用HEAD~2
    
    • 1
    • 2
    • 3
    1. Revert Commit (解决生产问题推荐)
      git 代码回滚 reset revert 详解 IDEA操作 4种reset区别
    2. Undo Commit (解决本地开发提交错误推荐、适合还没有提交且要回退的情况)
      提交过在回退,再次push可能会产生冲突
      git 代码回滚 reset revert 详解 IDEA操作 4种reset区别






    本地已经有一个开发完成的项目,这个时候想要上传到仓库中

    1. 打开idea的 Terminal 之后,进入项目根目录,初始化git
    git init
    
    • 1
    1. 添加暂存文件
    git add . #所有文件
    
    • 1
    1. 提交暂存文件
    git commit -m '注释'
    
    • 1

    这个时候可能会报错

    fatal: detected dubious ownership in repository at 'D:/_Myself/code/java/bkTool'
    'D:/_Myself/code/java/bkTool' is owned by:
            'S-1-5-21-3962368293-3680662587-454507184-1001'
    To add an exception for this directory, call:
    
            git config --global --add safe.directory D:/_Myself/code/java/bkTool
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    这个时候我们只需要,按照他的要求添加权限就好

    git config --global --add safe.directory # 项目根目录 D:/_Myself/code/java/bkTool
    
    • 1
    1. 增加远程仓库地址(如果有可跳过)
    git remote add origin  你的仓库地址
    
    • 1
    1. 拉取内容(这应该是一步没有用的操作)

    因为我们的前提就是一个新仓库,所以肯定不会因为之前的文件产生冲突不适配的情况,但是基于好的开发习惯,我们还是象征性的 pull 一下

    git pull origin   分支名
    
    • 1
    1. 推送内容
      6.1 本地分支 = 远程分支
    git push origin 分支名
    
    • 1

    6.2 本地分支 != 远程分支

    本地main 推送到远程其他分支上,如:testGit

    git push  -f origin local_branch:remote_branch # 要强制推送
    
    • 1
    1. 推送完成之后,我们重启idea,这个时候我们查看一下我们idea是否已经产生了 版本管理,如果不好这个时候只需要手动添加一下就好了,然后我们的idea就和直接拉仓库的代码产生的效果一模一样了。

    注意:

    • 我们如果是使用了本地分支 ==》其他远程分支,我们最后在上面一系列初始化完成之后,在本地创建一下同名分支,在这个分支下干活,不然在我们推送的 时候还是会报错,无法推送,只能手动强制推送

    在这里插入图片描述

  • 相关阅读:
    【echarts】解决ECharts鼠标悬停(mouseover)事件触发范围问题
    java-php-python-ssm-养老机构服务信息管理-计算机毕业设计
    2024年度“阳江市惠民保”正式发布!阳江市专属补充医疗保险全新升级
    SQL——前端常用sql的语句、sql与计算机
    Transmit 5 :高效轻便的文件传输工具,提升Mac传输效率
    C++ 继承
    为什么要做媒体发稿?企业为什么都注重媒体推广?
    ES10 新特性
    03.3线性回归的简洁实现
    多模态 多引擎 超融合 新生态!2023亚信科技AntDB数据库8.0产品发布
  • 原文地址:https://blog.csdn.net/Bkhole/article/details/133433103
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号