一小时轻松掌握Git,看这一篇就足够

news2024/11/15 18:13:30

文章目录

  • 序言:版本控制分类
  • 一、Git环境配置
    • 下载
    • 卸载
    • 安装
  • 二、常用linux命令
  • 三、基本配置
  • 四、Git基本操作
    • 0.原理图
    • 1.项目创建及克隆
      • 方式一:本地仓库搭建
      • 方式二:克隆远程仓库
    • 2.文件操作
    • 3.配置ssh公钥
    • 4.分支
    • 5.push代码
  • 参考

序言:版本控制分类

使用版本管理工具,可以实现 版本管理、多人协作、工作量统计、跟进软件开发过程 等等。

1 本地版本控制
在本地记录每次文件的更新。
缺点:缺乏组织性

2 集中式版本控制SVN
所有的版本都放在一个单独的服务器上,每个开发人员直接从服务器上进行读写。
缺点:服务器挂了咋办,哪怕定期备份,但还是会有一定程度上的数据丢失。联网才能工作。

3 分布式版本控制Git
每个用户电脑上都同步了所有版本,可以在离线时本地提交,等联网了push到服务器上去。
优点:只要有一个用户的设备没有问题,就可以恢复所有的数据。
缺点:占用空间。

一、Git环境配置

下载

官网下载太慢了,还是镜像快,直接下载最新版exe:http://npm.taobao.org/mirrors/git-for-windows/

卸载

由于我已经安装了Git,为了展示完整的过程,我先把它卸载了:

1 删除相关环境变量
2 控制面板中卸载Git工具

安装

打开下载的安装包,无脑下一步安装。
安装好后会有三个工具可供使用,Git Bash是linux风格的命令行, 最常用 ;Git CMD是windows风格的命令行;Git GUI是图形化操作界面。

在这里插入图片描述

二、常用linux命令

在这里插入图片描述

三、基本配置

  • 查看配置:
git config -l
  • 删除配置:

直接操作安装目录下的配置文件即可:

D:\setup\Git\etc\gitconfig --system 系统配置
C:\Users\14095.gitconfig --global 用户全局

  • 配置github名称和邮箱:
git config --global user.name "xiaolongxia291"
git config --global user.email "**.com"

四、Git基本操作

0.原理图

在这里插入图片描述

1.项目创建及克隆

注意工作目录尽量不要有中文。

一些重要命令如下:

在这里插入图片描述

方式一:本地仓库搭建

- 1 创建一个文件夹
- 2 进入文件夹,按住shift然后鼠标右键选中Git bash
- 3 执行初始化工作空间命令:git init
初始化成功会显示Initialized empty Git repository in D:/0 project/git-demo/.git/

方式二:克隆远程仓库

  • 先去github远程仓库上粘贴url:

在这里插入图片描述

  • 然后在工作目录下的git bash中执行命令:
git clone 粘贴的url
# 执行成功会显示:
Cloning into 'enterprise-programming-question-bank'...
remote: Enumerating objects: 107, done.
remote: Counting objects: 100% (107/107), done.
remote: Compressing objects: 100% (59/59), done.
remote: Total 107 (delta 28), reused 89 (delta 18), pack-reused 0
Receiving objects: 100% (107/107), 73.56 KiB | 308.00 KiB/s, done.
Resolving deltas: 100% (28/28), done.

2.文件操作

  • 添加到暂存区:
# 把所有文件添加到暂存区
git add .
# 添加指定的文件到暂存区
git add xx文件

  • 将暂存区内容commit到本地仓库:
git commit -m "提交信息"
  • 忽略文件:

在.gitignore中配置,示例:

README.md
target/
!.mvn/wrapper/maven-wrapper.jar
!**/src/main/**/target/
!**/src/test/**/target/

### STS ###
.apt_generated
.classpath
.factorypath
.project
.settings
.springBeans
.sts4-cache

### IntelliJ IDEA ###
.idea
*.iws
*.iml
*.ipr

### NetBeans ###
/nbproject/private/
/nbbuild/
/dist/
/nbdist/
/.nb-gradle/
build/
!**/src/main/**/build/
!**/src/test/**/build/

### VS Code ###
.vscode/

3.配置ssh公钥

  • 首先,进入这个目录:C:\Users\14095.ssh,然后操作:
# 执行命令生成公钥,全部回车
ssh-keygen
  • 用vscode打开id_rsa.pub,复制粘贴里面的公钥

  • 然后去github上添加公钥https://github.com/settings/keys:

在这里插入图片描述

4.分支

github在这看分支。分支说白了就是用来管理版本的,不同分支互不打扰,可以并行执行。
在这里插入图片描述

  • 分支命令:

注意,要先commit才能操作分支。

# 本地
git branch
# 远程
git branch -r
# 创建一个分支
git branch 分支名
# 删除一个分支
git branch -d 分支名
# 切换到分支
git checkout 分支名
# 删除远程分支
git push origin --delete 分支名
git branch -dr 分支名

5.push代码

git push -u origin 分支名

【完结!】

参考

教程:跳转

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/399558.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

ORB_SLAM2+kinect稠密建图

下载代码:https://github.com/gaoxiang12/ORBSLAM2_with_pointcloud_map 运行代码: 解压代码后,删掉作者自己编译的build文件夹(下面三个都删除): ~/ORB_SLAM2_modified/build, ~/ORB_SLAM2_modified/T…

【上传项目代码到Git详细步骤】

1.下载安装Git到电脑上(这里我之前已经安装好了,就不细说了)2.进入控制台安装好后右键点击桌面空白部分会多出两个菜单选项,点击第二个Git Bash Here(点击第一个你会爆炸)会弹出一个git控制台,如…

华为OD机试用Python实现 -【分解质因数】 2023Q1A

华为OD机试题 本篇题目:分解质因数题目示例 1输入输出示例 2输入输出Code代码编写思路最近更新的博客 华为od 2023 | 什么是华为od,od 薪资待遇,od机试题清单华为OD机试真题大全,用 Python 解华为机试题 | 机试宝典【华为OD机试】全流程解析+经验分享,题型分享,防作弊指南

从0-1搭建交付型项目管理体系流程(上)【宝芝林2】

很多项目经理在这个阶段,由于经验不足及整个项目管理体系涉及的环节和内容比较庞杂,往往无法有效思考,无从下手。笔者有幸在最近几年的工作实践中,实际搭建并迭代了2-3次项目管理体系流程框架,期间也经历过很多迷茫&am…

C++基础了解-21-C++ 继承

C 继承 一、C 继承 面向对象程序设计中最重要的一个概念是继承。继承允许我们依据另一个类来定义一个类,这使得创建和维护一个应用程序变得更容易。这样做,也达到了重用代码功能和提高执行效率的效果。 当创建一个类时,不需要重新编写新的…

mes系统如何管理企业生产

随着市场竞争的日趋激烈,很多企业都开始意识到生产管理的重要性。mes系统如何管理企业生产?下面,我们通过一个实例来说明。 案例简介: 一、客户需求快速增长 随着市场竞争的加剧,越来越多的客户提出了个性化需求。同…

人体存在传感器成品方案,精准感知静止存在,实时智能化感控技术

随着现今智能时代的发展,酒店也越来越趋于智能化,也在不断地推行智慧酒店,这也给人们入住酒店提供了良好的体验。 人体存在感知是智能酒店中极其重要的一项应用技术,只有智能设备通过精准地感知人体存在,才能更好地做…

2023-3-9-一篇简短的文章把C++左右值关系讲的透透彻彻

目录前言C左值和右值二、右值引用二、右值引用前言 对于C的左值和右值相信很多人都没有一个很透彻的了解,之前我也是不懂的时候查阅了好多文章,但是讲完我还是一头雾水,直到我遇到一篇宝藏文章,讲的左值右值的关系以及Move函数的用法是相当的清楚,文章链接在这,话不多说讲解一…

C++ ,JNI, Java 数据传递全解(一)

在讲正题之前,先说一下C,JNI和Java 对应的数据类型对比吧,废话不多说,直接上图上面为C,Java,JNI 三者只见对应的数据类型好了,现在我们有了上面的数据类型比对,下面就讲讲从C如何将数…

MySQL的下载及安装详细教程

提示:本文仅为MySQL初学者的安装MySQL过程提供参考,创作不易,请多点赞支持! MySQL的下载及安装前言一、MySQL的下载及安装1.MySQL的下载2.MySQL的安装3.配置环境变量4.连接MySQL4.1 方式一4.2 方式二前言 本文内容主要是帮助初学…

OpenWrt 制作软件包05

文章目录 OpenWrt 制作软件包05软件包目录结构分析软件包顶层Makefile分析OpenWrt一些常用的变量一些默认的变量Package宏定义Build宏定义构建自己的软件系统软件包工程目录文件内容分析编译安装卸载OpenWrt 制作软件包05 软件包目录结构分析 如下图所示 :

4N65-ASEMI高压MOS管4N65

编辑-Z 4N65在TO-220封装里的静态漏极源导通电阻(RDS(ON))为2.5Ω,是一款N沟道高压MOS管。4N65的最大脉冲正向电流ISM为16A,零栅极电压漏极电流(IDSS)为10uA,其工作时耐温度范围为-55~150摄氏度。4N65功耗&#xff08…

[工控自动化]信捷PLC与威纶通HMI以太网通讯的连接设置

在工业自动化领域,PLC和触摸屏是经常使用的元器件,其中PLC是处理逻辑与数据的核心,而触摸屏HMI则是显示与操作的必备。 工控领域虽然是外国品牌的天下,但近些年来,国产PLC和HMI品牌也在成长,例如汇川、信捷、威纶通等。 本文以实际使用经验,介绍一下信捷PLC与威纶通HMI的…

java实用小技巧:判断list是否有重复项

在项目中经常会遇到这样的场景,就是一个list,根据某种规则,我要去判断里面是不是有重复的项。 难度不高,但有点烦,所以专门开一篇文章来记录一下,争取弄一个相对简洁的写法。 先看一个简单的例子&#xf…

DSF深度搜索时到底是如何回溯的(小tip)

这一段让我迷了两次,为什么回溯的时候,恢复了最后一位,往上递归一层之后,把最后一位填在它前一位,但是原本的前一位没有恢复,最后一位要怎么办?其实这还是递归没明白 也就是这一步是如何实现的 …

Kafka 压缩算法

压缩 (compression) : 用时间换空间的思想 用较小的 CPU 开销获得磁盘少占用或网络 I/O 少传输 Kafka 消息分两层: 消息日志组成 : n 个消息集合消息集合 (message set) 组成 : n 条日志项 (record item)日志项封装了消息 (message)Kafka 在消息集合层上进行写入…

python趣味编程-奥赛罗游戏

在上一期我们用Python实现了一个高速公路汽车游戏的游戏,这一期我们继续使用Python实现一个简单的奥赛罗游戏,让我们开始今天的旅程吧~ 在Python中使用Turtle实现的奥赛罗游戏 在Python中使用Turtle的简单奥赛罗游戏 是一个以 Python 为程序设计语言的项…

基于nvidia xavier智能车辆自动驾驶域控制器设计与实现(一)

智能车辆在减少交通事故、节能减排、缓解交通拥堵等方面具有十分重要的作用,自动驾驶系统又是智能车辆的核心。近年来,随着智能车辆的应用场景日益广泛,人工智能算法在自动驾驶系统中广泛应用,自动驾驶系统功能不断增强&#xff0…

ccc-pytorch-RNN(7)

文章目录一、RNN简介二、RNN关键结构三、RNN的训练方式四、时间序列预测五、梯度弥散和梯度爆炸问题一、RNN简介 RNN(Recurrent Neural Network)中文循环神经网络,用于处理序列数据。它与传统人工神经网络和卷积神经网络的输入和输出相互独立…

Revit导出CAD图纸操作及批量导出

一、Revit如何导出CAD格式图纸 1.打开Revit模型。 2.项目浏览器,图纸(全部),鼠标右键点击,新建图纸。 3.选择自己需要的图纸大小,点击“确定”,即可创建一张图纸。 4.找到想要导出的图纸标高或者立面,例如&…