[JD_Magi]git学习笔记

2023-12-12 10:50
文章标签 学习 笔记 git jd magi

本文主要是介绍[JD_Magi]git学习笔记,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

git学习笔记

1、什么是git

版本控制工具(版本迭代、版本管理器)

2、有什么用

  • 实现跨区域多人协同开发
  • 追踪和记载一个或多个文件的历史记录
  • 组织和保护你的源代码和文档
  • 并行开发,提高开发效率
  • 跟踪记录整个软件开发的过程
  • 减轻开发人员的负担,节省时间,同时降低人为错误

3、版本控制

  1. 本地版本控制

    记录文件每次更新,可以对每个版本做一个快照,或者记录补丁文件,适合个人使用

  2. 集中版本控制(SVN)(服务器掉了就会丢失)

    所有版本的数据保存在服务器上,协同开发者从服务器上同步更新或上传自己的修改

  3. 分布式版本控制(Git)(每个用户保存的都是所有版本数据)

    每个人都拥有全部代码

    可以离线在本地提交,只需联网时push到相应的服务器或者其它用户那里

Git目前是世界上最先进的分布式版本控制系统

4、安装git

官网下载一般比较慢,所以一般可以去国内的镜像网站下载

下载地址:https://mirrors.huaweicloud.com/git-for-windows/

安装步骤:选择安装路径后一路next即可

5、Git基本理论

Git本地有三个工作区域:工作目录(Working Directory)、暂存区(Stage/Index)、资源库(Repository或Git Directory)。如果加上远程的git仓库(Remote Directory) 就可以分为四个工作区域。文件在四个区域的转换关系如下:

在这里插入图片描述

6、Git项目搭建

先设置用户名和邮箱

git config --global user.name 用户名#配置用户名
git config --global user.email 邮箱#配置邮箱git config -l #查看配置

需要掌握的命令

  1. 本地仓库搭建

    #在当前目录新建一个Git代码库
    git init #生成.git文件(隐藏文件)
    
  2. 克隆远程仓库

    git clone https://gitee.com/用户个性地址/xxx.git#将远程仓库克隆到本地
    

7、Git文件操作

文件的四种状态

  • Untracked:未跟踪,此文件在文件夹中,但没有加入到git库。不参与版本控制。通过git add 状态变为Staged
  • Unmodify:文件已经入库,未修改,即版本库中的文件块中内容与文件夹中完全一致。这种类型的文件有两种去处,如果被修改而变为Modifiled。如果使用git rm移出版本库,则成为Untracked文件
  • Modifiled:文件已修改,仅仅是修改,并没有进行其他操作,这个文件也有两个去除,通过git add 可进入Staged状态。使用git checkout 则丢弃修改过,返回到unmodify状态,这个git checkout即从库中取出文件,覆盖当前修改
  • Staged:暂存状态。执行git commit 则将修改同步到库中,这时库中的文件和本地文件又变为一致,文件为Unmodify。执行git reset HEAD filename取消暂存,文件状态为Modified

查看文件状态

git status [文件名] #查看指定文件的状态
git status # 查看所有文件的状态#常用操作
git add . #将当前目录所有文件添加到git暂存区
git commit -m "my first commit" #提交并备注提交信息
git push origin master #将本地提交推送到远程仓库

忽略提交的文件

在主目录建立一个".gitignore"文件

规则:

  • 以#为注释
  • 可以使用linux通配符
  • !文件名:表示这个为例外不被忽略
  • /:路径分割符
    • xxx/:往下忽略,即xxx后面的都忽略
    • /xxx:往上忽略,即xxx前面的都忽略

8、使用码云

  1. 注册

  2. 设置本机绑定SSH公钥,实现免密码登录

    ssh-keygen -t rsa# 生成两个文件在.ssh    一个公钥一个私钥   然后去gitee添加就可以了
    
  3. 创建仓库

9、集成IDEA

  1. 方法一:在初始化的git仓库创建同名项目
  2. 方法二:创建项目把**.git**文件复制到项目里
  3. 使用:可以直接在控制台使用命令

10、Git分支(多人协作)

常用命令

git branch #查看本地分支git branch -r #查看远程分支git branch -a #查看所属分支git branch 分支名 #创建新分支git checkout 分支名 #切换分支git checkout -b 分支名   #创建并切换到该分支git merge 分支名 #合并分支(合并分支之前需要切换到master分支上)git branch -d 分支名 #删除分支git push origin --delete 分支名 #删除远程仓库的分支

这篇关于[JD_Magi]git学习笔记的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/484341

相关文章

一文详解Git中分支本地和远程删除的方法

《一文详解Git中分支本地和远程删除的方法》在使用Git进行版本控制的过程中,我们会创建多个分支来进行不同功能的开发,这就容易涉及到如何正确地删除本地分支和远程分支,下面我们就来看看相关的实现方法吧... 目录技术背景实现步骤删除本地分支删除远程www.chinasem.cn分支同步删除信息到其他机器示例步骤

Go学习记录之runtime包深入解析

《Go学习记录之runtime包深入解析》Go语言runtime包管理运行时环境,涵盖goroutine调度、内存分配、垃圾回收、类型信息等核心功能,:本文主要介绍Go学习记录之runtime包的... 目录前言:一、runtime包内容学习1、作用:① Goroutine和并发控制:② 垃圾回收:③ 栈和

git stash命令基本用法详解

《gitstash命令基本用法详解》gitstash是Git中一个非常有用的命令,它可以临时保存当前工作区的修改,让你可以切换到其他分支或者处理其他任务,而不需要提交这些还未完成的修改,这篇文章主要... 目录一、基本用法1. 保存当前修改(包括暂存区和工作区的内容)2. 查看保存了哪些 stash3. 恢

Android学习总结之Java和kotlin区别超详细分析

《Android学习总结之Java和kotlin区别超详细分析》Java和Kotlin都是用于Android开发的编程语言,它们各自具有独特的特点和优势,:本文主要介绍Android学习总结之Ja... 目录一、空安全机制真题 1:Kotlin 如何解决 Java 的 NullPointerExceptio

IDEA实现回退提交的git代码(四种常见场景)

《IDEA实现回退提交的git代码(四种常见场景)》:本文主要介绍IDEA实现回退提交的git代码(四种常见场景),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1.已提交commit,还未push到远端(Undo Commit)2.已提交commit并push到

重新对Java的类加载器的学习方式

《重新对Java的类加载器的学习方式》:本文主要介绍重新对Java的类加载器的学习方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、介绍1.1、简介1.2、符号引用和直接引用1、符号引用2、直接引用3、符号转直接的过程2、加载流程3、类加载的分类3.1、显示

Git可视化管理工具(SourceTree)使用操作大全经典

《Git可视化管理工具(SourceTree)使用操作大全经典》本文详细介绍了SourceTree作为Git可视化管理工具的常用操作,包括连接远程仓库、添加SSH密钥、克隆仓库、设置默认项目目录、代码... 目录前言:连接Gitee or github,获取代码:在SourceTree中添加SSH密钥:Cl

Java学习手册之Filter和Listener使用方法

《Java学习手册之Filter和Listener使用方法》:本文主要介绍Java学习手册之Filter和Listener使用方法的相关资料,Filter是一种拦截器,可以在请求到达Servl... 目录一、Filter(过滤器)1. Filter 的工作原理2. Filter 的配置与使用二、Listen

利用Python快速搭建Markdown笔记发布系统

《利用Python快速搭建Markdown笔记发布系统》这篇文章主要为大家详细介绍了使用Python生态的成熟工具,在30分钟内搭建一个支持Markdown渲染、分类标签、全文搜索的私有化知识发布系统... 目录引言:为什么要自建知识博客一、技术选型:极简主义开发栈二、系统架构设计三、核心代码实现(分步解析

IDEA中Git版本回退的两种实现方案

《IDEA中Git版本回退的两种实现方案》作为开发者,代码版本回退是日常高频操作,IntelliJIDEA集成了强大的Git工具链,但面对reset和revert两种核心回退方案,许多开发者仍存在选择... 目录一、版本回退前置知识二、Reset方案:整体改写历史1、IDEA图形化操作(推荐)1.1、查看提