·1.1 git的概述

  Git(读音为/gɪt/。)是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。  Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。

1.2 git的服务器地址

  • 国内git服务器地址:https://gitee.com/
  • 国外git服务器地址:https://github.com/
  • 准备码云gitee账号,我的是gww.vip@qq.com和gww.dev@qq.com

1.3 Git原理图

原理:我在idea写代码,idea就是工作区,提交到远程仓库前,先要提交到本地仓库。在本地仓库这边有两步,第一步先把代码add到本地仓库的暂存区(storage),第二步再commit到本地仓库主分支(也就是master),最后才可以把本地仓库的代码提交远程仓库里,总共就这么三步,当然实际工作中,我们在准备push的时候要先拉取一下代码,看与自己代码有没有冲突的地方(两个人在同一方法里写了不同代码),有的要和对方协商修改合并,最后再提交。

        

2 实战

  • 这里使用IDEA内置的git功能来讲解使用
  • 在学习前先安装 git管理工具到本地
  • git工具默认安装的路径如下图,安装完后把bin目录添加path变量中,在终端可以查看git工具的版本号

        

              

2.1 工作时开发的注意事项

  • 代码需要备份【主要是防止代码丢失】
  • 每个大版本都需要备份分支持【主要是1.0出现问题时,不能在2.0的版本上修复】
  • 每天上午上班,要从服务器下载最新的代码到本地
  • 每天下午下班前,把自己的代码提交到服务器
  • 团队开发时需要解决文件冲突问题

2.2 commit,push,branches,master讲解

*****掌握每一个使用步骤的原理

Step1——配置idea

  

Step2——在码云上创建空白的Java仓库,用于存储工作中开发的代码备份

step3——上传本地空项目到码云上,让仓库拥有一个项目结构

先在idea中创建一个新的javaweb项目

先随便在里面建个包,写个java文件

在码云上创建的仓库名例如mayaole/gyfdemo01点一下,看到文件那点一下,点上传文件,可以找到本地项目里的文件拖到网页位置,这个初始的项目就上传到远程仓库了

 step4——在IDEA中从码云下载项目,下载的地址就是在git中克隆的位置

找到VCS,选择git,表示从服务器下载代码

然后把git的仓库地址复制,如图,然后点clone复制份到本机桌面的某个文件夹下

之前在本地建的新项目就不再用了,可以先删掉

克隆后,文件夹里打开如下

新创建一个文件时,把有下面的弹窗口,选择Yes, 它意思是如果不小心选中了No,仍然可以通过另一种方式添加到本地仓库缓存,如下,第二张是我说的另一种方式

Step6——commit提交代码并写上备注这里是从暂存区存到本地仓库主干

Step7——把代码提交(push)到服务器

在推的过程中,会弹出输入git服务器的用户名和密码,输入即可

推送成功后,在码云服务器会看到更新的功能

Step9————写点功能,如UserService,然后提交发布V1.0.0,然后添加分支

选择创建分支

Step10——切换回主干

current表示本地当前项目所在分支,新版本事一个书签的标志

Step11——在主杆上进行2.0的开发,添加邮件发送功能

Step12——切换回1.0分枝,进行Bug修复,然后提交(这是为了说明两个分支可以分开也业务,互不冲突)

Step13——推1.0代码到服务器

Step14——不要忘记把主杆也推上服务器,先切换回主杆,再push

Step15——将主分支master与1.0合并分支(合并完后,当前项目还是master主分支,只不过变成合并完的master主分支)

合并后,就把master推上服务器

用当前mater创建2.0分枝,那么master就是3.0分枝了,然后把2.0推到服务器

2.3提交历史记录查看

2.4对比不同版本的区别

 

 

2.5回退到上一个版本

  • 比如你误删了一段代码(方法),但又提交了,可以使用下面的get来进行回退
 

2.6 团队开发,解决冲突

Step1——准备两个马云账号

不,说错了,是码云账号,为什么两,为了模拟两个开发者,然后电脑里再准备一台虚拟机,上面也装idea,码云远程项目里面添加邀请第二个账号后,第二个同意完后也把项目chone进idea开发,写同一个业务位置,制造不同

Step2——添加其它开发者到当前项目组

Step3:

  • 在虚拟机中给某个类添加一些代码,比如添加个方法,然后push到服务器
  • 在push服务器中,可能失败,因为你没有把另一个开发者的帐号添加到项目组中
 

 

Step4:

  • 在本机中也在同一个文件中修改或者添加代码
  • 然后push到服务器会失败,因为代码冲突了
 

 

合并前

 

合并后,然后再次push即可以了

注意:A开发者更新后,另一个开发者可以重新pull更新代码到本地

 

教程会有不足,还请看的指出,后面还会修改,内容会有一定时效性,随着时间推移,会有新的功能样式出现,或更简单的操作界面。程序员就是不停的学。

git工作中最常用的用法教程,不走命令行的更多相关文章

  1. git工作中的常用操作

    上班开始,打开电脑,git pull:拉取git上最新的代码: 编辑代码,准备提交时,git stash:将自己编辑的代码暂存起来,防止git pull时与库中的代码起冲突,否则自己的代码就白敲了: ...

  2. Git工作中的使用

    Git工作中的使用 2019-01-16 14:29:31 雯雯木 阅读数 207更多 分类专栏: 自动化测试   版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出 ...

  3. C++中string常用函数用法总结

    string(s小写)是C++标准库中的类,纯C中没有,使用时需要包含头文件#include<string>,注意不是<string.h>,下面记录一下string中比较常用的 ...

  4. gplaycli—— 用于从 GooglePlayStore 中下载和管理 Apk 文件的命令行工具

    gplaycli-- 用于从 GooglePlayStore 中下载和管理 Apk 文件的命令行工具 这个 GooglePlay市场 中 https://play.google.com/store/a ...

  5. git 工作中常用命令(结合vscode学习git 命令)

    作为一名前端开发,大家在工作中常常使用什么开发工具呢,我觉得我首选的是vscode,他配合git使用起来非常方便. 工作中常用三个命令: git终端常使用: git add . git commit ...

  6. git工作中常用操作总结

    这篇文章主要记录下工作中常用的git操作.主要是对之前文章记录的问题做个总结,这个其实在idea中操作更加简单 别名配置 在敲git 命令时,其实可以使用别名,比如 commit可以配置为ci 下面是 ...

  7. git工作中常用命令-工作中踩过的坑

    踩坑篇又来啦,这是我在工作中从git小白进化到现在工作中运用自如的过程中,踩过的坑,以及解决办法. 1.基于远程develop分支,建一个本地task分支,并切换到该task分支 git checko ...

  8. Git 工作原理以及常用命令操作

    GIT工作原理 要了解GIT工作原理,先了解GIT的这几块区域: 工作区域划分 工作区:指的是本地工作空间,如果刚拉取下来的代码,没有修改的内容,这块区域是空白的 (modified-已修改状态) 暂 ...

  9. git详情、git工作流程、常用命令、忽略文件、分支操作、gitee远程仓库使用

    今日内容概要 git详情 git工作流程 git常用命令 过滤文件 分支操作 git远程仓库使用 可参照:https://www.cnblogs.com/liuqingzheng/p/15328319 ...

随机推荐

  1. AI-web-1靶机过关记录

    靶机地址:172.16.1.195 Kali地址:172.16.1.107 1.信息收集 端口扫描: 目录扫描: 发现robots.txt敏感文件,查看 存在/m3diNf0/,/se3reTdir7 ...

  2. NCTF2019 小部分题解

    前言 礼拜五领航杯打的比较累,做不出WEB,D3CTF没用,做了NJCTF的一些题目(懒,睡觉到12点起) Misc 第一次比赛先去做misc,以前一直做WEB,以后要WEB+MISC做.礼拜六下午做 ...

  3. SpringCloud(六)学习笔记之Zuul

    Zuul 在云平台上提供动态路由,监控,弹性,安全等边缘服务的框架.Zuul 相当于是设备和 Netflix 流应用的 Web 网站后端所有请求的前门 Hystrix+Ribbon(不使用Feign) ...

  4. [Qt] 文本文件读写, 摘自官方文档

    Reading Files Directly The following example reads a text file line by line: QFile file("in.txt ...

  5. git常用命令/git 部分高级命令备忘录

    常用命令 克隆 - git clone  git@gitee.com:niunafei1/git_learning.git git 创建分支 - git checkout -b dev git 切换分 ...

  6. Apple Watch Series 6或将增加焦虑监测和睡眠追踪功能

    一条新的泄露消息称,Apple Watch Series 6 将增加心理健康功能,延长电池续航时间,并对现有传感器进行扩展,这样设备可以测量血液含氧量.苹果即将更新的 Apple Watch 新款推测 ...

  7. 【Linux常见命令】tar命令

    [独立命令,只能用其中一个,和别的命令连用]这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个. -c: 建立压缩档案 -x:解压 -t:查看内容 -r:向压缩归档文件末 ...

  8. RxJava--Buffer,GroupBy 对比

    Buffer 设定收集n个元素为一组,以下方代码为例,三个为一组,则当组满三个元素时,返回一次List数据 没组满三个元素时,如果调用onComplete,直接发送剩余元素,没调用onComplete ...

  9. 解决w3wp.exe占用CPU和内存问题

    在WINDOWS2003+IIS6下,经常出现w3wp的内存占用不能及时释放,从而导致服务器响应速度很慢.可以做以下配置进行改善:1.在IIS中对每个网站进行单独的应用程序池配置.即互相之间不影响.2 ...

  10. 《JavaScript和jQuery实战手册(原书第2版)》——2.1节语句

    2.1 语句JavaScript语句是基本的编程单元,通常表示JavaScript程序中的单个步骤.可以把一条语句看做一个句子一样,就好像成串的句子一起组成一个段落(或一章,或一本书)一样,把语句组合 ...