教程:

首先【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. asp输入框input通用输入限制

    1.文本框只能输入数字代码(小数点也不能输入) <input onkeyup="this.value=this.value.replace(/\D/g,'')" onafte ...

  2. lg7863

    傻题. 对于相邻的每个点,从高度高的点向高度低的点连边. 依靠差分的思想,设边权是高度差. 考虑第一问,答案显然是这个图dag路径覆盖,可以运行最大流. 考虑第二问.如果每连一条链,那么答案会加上这条 ...

  3. maven发布到本地仓库

    <distributionManagement> <repository> <id>localRepository</id> <url>fi ...

  4. Java控制流程(复习)

    流程控制语句 流程控制语句包括:顺序结构,分支结构,循环结构 分支结构 if语句: 第一种: if(关系表达式){ 语句体 } else{ 语句体2 } 第二种: if (){ } else if ( ...

  5. [OC] UIWebView APIs 的替换 以及转用WKWebView后的部分问题

    一.检查工程中的 UIWebView 1.打开终端,cd + 把项目的工程文件所在文件夹拖入终端(即 得到项目的工程文件所在的路径) 2.输入以下命令: grep -r UIWebView . 注意最 ...

  6. java-javaSE-集合类

    集合类结构 集合类的基本接口是 Collection 和 Map Collection 向下派生出 Set List Queue 等接口 Map 向下派生出 HashMap LinkedHashMap ...

  7. Java笔记_构造方法/构造器

    构造方法/构造器(constructor)   怎么来的?之前在创建对象时,是先把一个对象创建好后,再给这个对象的属性赋值,如果现在要求在创建一个对象时,就直接指定这个对象的属性,该怎么做?此时就可以 ...

  8. 2.5 OpenEuler 中C与汇编的混合编程

    2.5 OpenEuler 中C与汇编的混合编程 任务详情 在X86_64架构下实践2.5中的内容,提交代码和实践截图 把2.5的内容在OpenEuler中重新实践一遍,提交相关代码和截图 任务一x8 ...

  9. linux下进程和线程的区别和联系

    进程用fork()或者vfork()生成(vfork是专门为了加载其他程序的子程序而优化的,随着fork()的优化,vfork已经被优化) fork()生成的子进程与父进程共享代码区内存,对于其他内存 ...

  10. main(调用一个公共组件)

    app.vue <template> <div> <Student/> <School></School> </div> < ...