教程:

首先【Git的基础】 | 猴子都能懂的GIT入门 | 贝格乐(Backlog)

Learn Git Branching

配置

Git 本地配置多个ssh key:

https://www.cnblogs.com/hafiz/p/8146324.html

https://www.jianshu.com/p/2cfa1f0c1381

Git 中pull,update,merge 和rebase

git pull 是Git的原生命令,update project 不是Git的原生命令,是IDEA对Git的封装扩展。

git pull 是先 git fetch ,然后再 git merge 。git fetch 使用了 --rebase 参数,就相当于先 git fetch ,再 git rebase 。

而 idea中的 update project 就是对 git fetch 与 git fetch --rebase 的封装。

git rebase的视频讲解:https://www.bilibili.com/video/BV1Ur4y1q7xB

假设我们现在有3个分支

  • master分支:线上环境使用的分支
  • testing分支:测试环境使用的分支
  • my_feature分支:开发新功能的分支,也就是当前分支

A. 假设我在my_feature上开发了一段时间,之后另外的同事开发的功能正式上线到master分支了,那么我可以在当前的分支下rebasemaster分支,这样我这个分支的几个commits相对于master还是处于最顶端的,也就是说rebase主要用来跟上游公共分支同步,同时把自己的修改顶到最上面

B. 我在my_feature上开发了一段时间了,想要放到test分支上,那就切到test,然后git merge my_feature,因为test是公共分支,最好是用merge

经常rebase,不然可能两个月后发现大量冲突。

多人项目尽量不用rebase,一般是merge。

从main分支rebase到我的分支,然后merge到main。

比如你从main上切了一个分支改了一些东西,明天你发现有人已经又改了新东西已经merae到 main了,你这时想让你的分支保持和main分支同步,不要离得太远每天rebase一下,最后你merge到main。

dialog:

比如你从main上切了一个分支,改了一些东西,明天你发现有人已经又改了新东西已经merge到 main了,你不管它继续干你的?还是你会merge一次?

我会把main再merge到我的分支一次。

对啊,rebase和merge一样的,区别就是多了个提交记录,但我认为这个提交记录没有用啊。显得提交记录很多,实际上没有用。你的意图就是你从main上拉分支,做个 feature,就这么一件事,有一个 commit就行了啊。

我明白了,就是rebase让你的分支好像从你当初拉过来时一样中间没有提交点。

关于git rebase的使用:

git rebase的时候捅娄子了

idea使用git更新代码 : update project(git merge、git rebase)

IDEA中git的使用:https://cloud.tencent.com/developer/article/1408148

Git分支操作

git本地仓库 同步远程仓库的所有分支

Git分支管理策略

Git 分支管理策略总结 - 掘金

Git分支管理策略 - 阮一峰的网络日志

git冲突

如何用朴素方法处理 Git 冲突

git合并冲突解决方法 - ZhangRuoxu - 博客园

6. 解决合并的冲突【教程1 操作分支】| 猴子都能懂的GIT入门| 贝格乐(Backlog)

GitLab 在线合并解决冲突后导致互相合并的问题

巨坑的GitLab在线解决冲突(解决后做了反向合并代码的操作?)

拉代码,提代码,pr,mr流程

从gitlab拉取代码、提交代码 流程

Github代码fork之后,如何与原仓库进行同步

Pull Request 与 Merge Request 的区别

Github或GitLab上如何更新自己Fork的库,利用Fork库进行开发的整个流程_define_YIDA的博客-CSDN博客

在GitHub上更新fork的项目 – 行星带

Git回退

IDEA Git Reset 选项说明_LZ1151226的博客-CSDN博客

IDEA小技巧-Git的回滚&&强推&&代码找回_哔哩哔哩_bilibili

git使用技巧:

B站视频合集

我在工作中是如何使用 git 的

如何规范你的Git commit? - 知乎 (zhihu.com)

IDEA Local Changes窗口显示_子小路兵的博客-CSDN博客_idea local changes

Git三大分区的概念 - 掘金

Git使用的一些文章的更多相关文章

  1. 或许是介绍Android Studio使用Git最详细的文章

    欢迎访问我的个人博客转发请注明出处:http://www.wensibo.top/2017/03/12/GitOnAS/ 前言 本文较长,图片很多很多,流量党慎入 使用Git已经有一段时间了,但是之前 ...

  2. GIT教程的好文章

    Git 教學(1):Git的基本使用 Git 教學(2):Git Branch 的操作與基本工作流程 Git 情境劇:告訴你使用 Git 時什麼情況該下什麼指令

  3. 使用git配置ssh的文章推荐

    https://blog.51cto.com/sgk2011/1925922 https://www.cnblogs.com/superGG1990/p/6844952.html https://bl ...

  4. Git快速入门

    如果你不想看长篇的Git教程,想快速了解Git的使用,那么本文可能会对你入门Git有所帮助.由于笔者用的是Windows系统,所以本文只写Git在Windows上的使用. 一.Git安装 去Git官网 ...

  5. 深入理解git,从研究git目录开始

    转发学习的啦. 似乎很少有人在读某个git快速教程的时候会说:“这个关于git的快速教程太酷了!读完了用起git来超级舒服,并且我一点也不怕自己会破坏什么东西.” 对git的初学者来说,刚接触git时 ...

  6. Git学习笔记(四)

    一.忽略特殊文件 在Git工作区的根目录下创建一个特殊的.gitignore文件,然后把要忽略的文件名填进去,Git就会自动忽略这些文件. 不需要从头写.gitignore文件,GitHub已经为我们 ...

  7. 探索.git目录

    .git目录 下面就开始进入.git目录,通过“ls”命令可以看到.git目录中的文件和子目录: 对于这些文件和目录,下面给出了一些基本的描述. hooks:这个目录存放一些shell脚本,可以设置特 ...

  8. 搭建Git本地服务器

    搭建Git本地服务器 参考文章:http://www.ossxp.com/doc/git/gitolite.html 当前任务,学习中... 公司小范围用法: 服务器上做的: .在服务器上建立一个用户 ...

  9. GIT入门篇-基本概念与操作

    GIT 首先必须说明的是, 这篇文章不是阐述GIT原理性和比较深入的文章.只是对于日常开发中比较常用的需求的总结和GIT这些命令大体的原理解释.所以掌握这个只能说能够应付一定的开发需求.但是如果你是个 ...

  10. Git版本管理荟萃

    用惯了svn,突然转到git难免有点不适,写个笔记好好备忘总结一番. 一.先看历史(imooc上的一个图): 二.git与svn GIT跟SVN一样有自己的集中式版本库或服务器.但,GIT更倾向于被使 ...

随机推荐

  1. html+css+js思维导图

  2. Jmix- 业务系统高效开发的少代码平台

    企业在数字化转型的过程中,都面临将现有的业务流程进行"软件化"的过程.然而,在我们的印象中,通常会觉得针对业务系统的软件开发不是特别高效.这背后有很多原因,从开发角度看,有一个主要 ...

  3. Python-网络编程和多进程多线程开发

    网络编程 osi7层模型 以通过访问网站发送请求数据为例,每一层会做如下的事情 应用层:规定数据的格式. "GET /s?wd=你好 HTTP/1.1\r\nHost:www.baidu.c ...

  4. 页面导出为PDF

    一.使用环境 Vue3.Quasar.Electron 二.安装 jspdf-html2canvas npm install jspdf-html2canvas --save 安装失败可以选择cnpm ...

  5. jssip3.9.1的demo,webphone网页电话

    用的目前最新的3.9.1版本,全版本在这里: https://jssip.net/download/releases/ https://github.com/versatica/JsSIP 代码: & ...

  6. IsNotEmpty和isNotBlank的区别

    isNotEmpty和isNotBlank都是判断字符串非空首先查看isNotEmpty( )isNotEmpty判断是否为空(null或size=0),不为空就返回true StringUtils. ...

  7. Software--C#--grammer_Delegate--Event

    2018-05-01 10:49:47 委托是一种类型,而事件是一个类或结构的成员,如同字段,属性.必须在类或结构中声明. 引申 -  Observe 观察者模式  Publish/Subscribe ...

  8. Docker Mysql修改时区

    背景 时区是使用了世界标准时间(UTC).因为在中国使用,所以需要把时区改成东八区的 或者启动容器时设置 -e TZ=Asia/Shanghai 永久修改 进入容器 docker exec -it m ...

  9. 「SOL」打扫笛卡尔cartesian (模拟赛)

    为什么会有人推得出来第三题想不出来签到题啊 (⊙_⊙)? 题面 有一棵有根树 \(T\).从根节点出发,在点 \(u\) 时,设点 \(u\) 还有 \(d\) 个未访问过的儿子,则有 \(\frac ...

  10. 最后的 SPRING

    其核心JAR包spring-web-5.2.0.RELEASE.jar和spring-core-5.2.0.RELEASE.jar的大小均为1.4MB左右 基于工厂模式实现对象的创建 添加了国际化.事 ...