一、版本控制器方式

1.1 实际场景

备份 代码还原 协同开发 追溯代码问题

1.2 版本控制方式

  1. 集中式版本控制工具 SVN和CVS
    每个人都从中央服务器下载代码,修改后提交到中央服务器。
  2. 分布式版本控制工具 git
    每个人电脑上都是一个完整的库,互相都可以看到对方的更改。

二、安装

  1. 解释:
    · Git GUI:Git提供的图形界面工具
    · Git Bash:Git提供的命令行工具
  2. 安装完之后先设置邮箱(邮箱确定不同的人员):
    打开Git Bash—
    设置人git config --global user.name "name"
    设置邮箱git config --global user.email "email"
  3. 可通过git config --global user.name查看是否设置成功

三、开始操作

3.1创建本地仓库

1)创建一个空目录作为本地Git仓库
2)进入这个目录中,点击右键打开Git bash窗口
3) 执行命令git init
4) 创建成功后可以在文件夹下看到隐藏的.git目录
之后可以查看第四部分的基础操作

3.2 分支

几乎所有的版本控制都支持分支。每个人有独立的分支,开发互不影响。完成之后再合并在一起。HEAD指向的就是当前的分支,修改只会改变当前分支的内容。
      git branch 查看分支
      git branch name创建name分支
      git checkout 分支名 切换分支         git checkout -b 分支名 创建并切换
      git merge 分支名1 合并分支    分支1和当前分支合并
            如果不同分支有冲突:则不会自动合并,将不同版本的信息存在文件中需要人工选择
      git branch -d name删除name分支 -D强制删除

3.3 Git远程仓库

常用 GitHub、码云、GitLab(企业常用),课程以码云为例。
1)打开gitee网页登录— 新建仓库—
2)配置SSH公钥:

  1. 在bash中输入ssh-keygen -t rsa(不断回车如果公钥已经存在则自动覆盖)
  2. cat ~/.ssh/id_rsa.pub获取公钥 — 复制输出的公钥 — 打开gitee的用户-设置-SSH公钥
  3. 验证配置是否成功:ssh -T git@gitee.com

3)连接本地仓库

  1. 打开在gitee上创建的仓库,复制SSH(远程仓库的地址)
  2. 在bash中git remote add name(自己设置的名字) ssh地址 注意这之前要git init
  3. 查看是否配置成功git remote 出现自己设置的名字就成功了
  4. 本地代码上传git push [本地分支名]:[远端分支名] 注意这之前要现在本地仓库中提交
    其完整代码是git push [-f] [--set-upstream][远端名称] [本地分支名]:[远端分支名]
    [-f]:强制覆盖远端代码
    [–set-upstream] 表示建立本地和远端分支的关联关系
    远端分支名和本地相同时可省略 :[远端分支名] 两者已关联则可省略 [本地分支名]:[远端分支名]

4)其他操作

  1. 从远程仓库克隆 git clone <仓库路径> [本地路径]
  2. 从远程仓库中抓取 git fetch [remote name] [branch name]
         将仓库里的更新抓取到本地,不会进行合并。如果不指定远端名称和分支名,则抓取所有并更新当前分支。如果需要合并,则需要git merge [remote name]
  3. 拉取命令git pull [remote name] [branch name] 即抓取+合并
  4. 解决合并冲突
    AB 都从远端clone后,A本地修改后push到远端,B从本地修改相同文件的同一内容后,想从远端仓库中拉取,则会合并冲突,和本地不同分支有冲突解决方式相同。

3.4 在IDEA中使用git

没看不用idea

四、基础操作指令

之前创建的文件夹下除了.git文件之外的其他文件都是我们的工作目录。在工作目录下对文件进行修改(增加、删除、更新),这些修改的状态会随着我们执行Git命令而发生变化
git add :从无到有新创建一个文件(未跟踪)或 修改已有文件(未暂存) 使用 git add 命令 将文件存至暂存区。(工作区—暂存区)
git commit :暂存区进入仓库,生成一次提交记录。(暂存区—仓库)git commit -m "评论内容"
git status :查看工作目录和暂存区的状态
git log:查看提交的历史

  • –all 显示所有分支
  • –pretty=oneline 将提交信息显示为一行
  • –abbrev-commit 使得输出的commit更简短
  • –graph 以图显示

git reset --hard commitID :版本回退
可以用git -log 或git log指令查看commitID
touch .gitignore 将不想参与更新的文件名加入,就可以不再参与仓库管理

黑马程序员Git教程笔记相关推荐

  1. 黑马程序员Java教程学习笔记(五)

    学习视频:https://www.bilibili.com/video/BV1Cv411372m 如侵权,请私信联系本人删除 文章目录 黑马程序员Java教程学习笔记(五) 日期时间:Date.Sim ...

  2. C++学习笔记(B站黑马程序员C++教程)

    C++学习笔记(B站黑马程序员C++教程) 简介 视频链接https://www.bilibili.com/video/BV1kV411U7Ub?spm_id_from=333.999.0.0 建议用 ...

  3. 黑马程序员Java教程学习笔记(三)

    学习视频:https://www.bilibili.com/video/BV1Cv411372m 如侵权,请私信联系本人删除 文章目录 黑马程序员Java教程学习笔记(三) 面向对象:设计对象.注意事 ...

  4. 【黑马程序员 C++教程从0到1入门编程】【笔记4】C++核心编程(类和对象——封装、权限、对象的初始化和清理、构造函数、析构函数、深拷贝、浅拷贝、初始化列表、友元friend、运算符重载)

    黑马程序员C++教程 文章目录 4 类和对象(类属性[成员属性],类函数[成员函数]) 4.1 封装 4.1.1 封装的意义(三种权限:public公共.protected保护.private私有)( ...

  5. [学习笔记]黑马程序员python教程

    文章目录 思维导图 Python基础知识图谱 面向对象 SQL入门和实战 Python高阶技巧 第一阶段 第九章:Python异常.模块与包 1.9.1异常的捕获 1.9.1.1 为什么要捕获异常 1 ...

  6. 黑马程序员|C++教程(56 指针-指针的定义和使用_)

    黑马程序员|C++教程(56 指针-指针的定义和使用_) 一.56 指针-指针的定义和使用_ 来自 一.56 指针-指针的定义和使用_ 因为我通过了指针来间接的找到了之前a那块内存,是不是,那么也就是 ...

  7. python视频教程黑马-python视频教程免费:求黑马程序员python教程?

    python后端开发需要学什么? 第一阶段:Python语言基础 主习Python最基识,如Python3.数据类型.字符串.函数.类件操作等.阶段课程结束后,学员需要完成Pygame实战飞机大战.2 ...

  8. 黑马程序员Maven学习笔记

    前言 这里是黑马程序员Maven学习笔记分享,这是视频链接. 我还有其它前端内容的笔记,有需要可以查看. 文章目录 前言 基础 Maven简介 Maven是什么 Maven的作用 Maven的下载 M ...

  9. 黑马程序员Python教程的代码--摆放游戏

    把黑马程序员Python教程的代码跟着老师打了一遍,供大家参考学习. 可直接粘贴以下代码学习,对应课程380-384节 class HouseItem:def __init__(self,name,a ...

  10. python从入门到高阶(基于黑马程序员python教程)

    文章目录 0.文章来源 1."学it就来%s%s员"% (name,"程序员") 2.%s:占位字符串.%d:占位整型.%f:占位浮点型 3.字符串格式化的精度 ...

最新文章

  1. React基础——快速搭建开发环境
  2. DHCP 中继实验
  3. Scenario 7 – HP C7000 VC FlexFabric Tunneled VLANs and SUS A/A vSphere
  4. 通过字符串的方式读取文件的内容
  5. linux access
  6. 07堆排序 python
  7. 神经网络入门之RNN(三)
  8. GLSL学习笔记三(片元处理)
  9. 代码整洁之道读书笔记----第三章---函数--第一节-专注且短小
  10. FPGA零基础学习:IP CORE 之 ROM设计
  11. 证件照排版软件_证件照的后期处理与打印
  12. 【CTF】Misc4——多种方法解决+闪的好快+come_game+白哥的鸽子+linux
  13. ubuntu20安装gdb插件gef的爬坑记录
  14. 【无标题】c++日常练习(16)——从中序与前序遍历序列构造二叉树
  15. 用vue写一个天气webAPP
  16. 中国富豪的七条发家路--颇显中国特色
  17. MATLAB矩阵行列式
  18. SwiftUI嵌入Stack样式导航视图(NavigationView)中List显示怪异的解决
  19. wordpress,从本地建站开始
  20. Tabby终端模拟器在Mac上的配置和使用

热门文章

  1. Linux系统下安装中文输入法
  2. 虚拟机android原生系统下载地址,Android x86开源项目最新版虚拟机镜像下载VM/Vbox...
  3. w10系统老是自动息屏_快速修复win10系统关闭屏幕后又自动唤醒点亮的方法
  4. Java商城项目实战
  5. 网络爬虫-爬取飞常准航班信息
  6. SQL Server 2016下载及安装教程
  7. 妙趣横生的算法(C语言实现 第2版)pdf
  8. 解析高通vendor层mct框架
  9. MCP2515在8M晶振控制器下配置1M波特率的配置
  10. 《深入解析windows操作系统第6版下册》第10章:内存管理(第三部分译文与图片)...