教程:

首先【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. docker 安装 jFrog

    docker run --name artifactory-oss-6.18.1 -d -p 8083:8081 docker.bintray.io/jfrog/artifactory-oss:6.1 ...

  2. Java学习笔记(二)java流程控制

    学习笔记2 Java流程控制 这次也是跟着[狂神说Java]Java零基础学习视频通俗易懂继续学习的,持续学习,你我共勉. 一. 用户交互Scanner 1. Scanner对象 之前学的基本语法没有 ...

  3. Css3中有关的 @media 媒体查询相关的知识

    1,书写格式 @media语法: @media[mediatype][and|not|only]([mediafeature]){ /*css code*/ } 常用mediatype all     ...

  4. Nacos服务管理

    注:基于SpringBoot项目 一.服务注册 1. 依赖引入 # 首先父工程中引入 SpringCloudAlibaba 版本管理依赖,其中会包含 nacos 的版本 <!-- SpringC ...

  5. jQuery-强大的jQuery选择器 (详解)

    jq除常用的选择写法之外的更多方法记录. 原文:jQuery-强大的jQuery选择器 (详解)[转] 1. 基础选择器 Basics 名称 说明 举例 #id 根据元素Id选择 $("di ...

  6. js 处理大数相减

    function sub(num1, num2) { if(num1 === num2) return '0' function lt(num1, num2) { if (num1.length &l ...

  7. go-fastdfs断点续传功能

    1)安装go-fastdfs: 可以从GitHub上获取go-fastdfs的源码,然后使用go get命令安装: go get github.com/sjqzhang/go-fastdfs 2)安装 ...

  8. 登录注册的小项目对比.Net Core与 .Net Framework的一些区别

    一.需求: 1.功能只有登录.注册. 二.架构: 1.分别为 UserSys.IServices:主要有实体和对实体的配置,还有对实体的操作接口 UserSys.Services :主要是对自ISer ...

  9. OS-lab6

    OS-lab6 管道 在lab5的时候我们实现了文件类设备的读写操作,而在fd.c中,我们定义了3种设备:文件类设备.管道.终端,其中终端已经被完成了,剩下的就是管道了. 管道是一种父子进程间通信的设 ...

  10. docker学习(dockerfile打jar包为镜像)

    docker打包jar为docker镜像 1.使用Dockerfile打镜像 将spring boot应用打包成jar包放置在/app/applcation路径中 编写dockerfile文件,内容参 ...