Git GitHub入门

news2024/9/29 17:32:22

目录

  • Git
    • 1. 安装Git
      • 1. 下载Git
      • 2. 安装Git
    • 2. Git常用命令
      • 1. 设置用户签名
      • 2. 初始化本体库
      • 3. 查看本地库状态
      • 4. 添加暂存区
      • 5. 提交本地库
      • 6. 查看历史记录
      • 7. 修改文件
      • 8. 版本穿梭
    • 3. Git分支操作
      • 1. 查看分支
      • 2. 创建分支
      • 3. 切换分支
      • 4. 合并分支
  • GitHub操作
    • 1. 创建远程仓库
    • 2. 远程仓库操作
    • 3. 团队内协作
    • 4. ssh免密登录
  • IDEA集成Git
    • 1. 配置Git
    • 2. 集成Git
    • 3. 版本回退
    • 4. 分支操作
      • 1. 创建分支
      • 2. 切换分支
      • 3. 合并分支
  • IDEA集成GitHub
    • 1. 设置GitHub账号
    • 2. 分享项目到GitHub
    • 3. 推送代码到远程库
    • 4. 拉取远程库代码合并本地库
    • 5. 克隆代码到本地
  • 码云 Gitee
    • 1. 创建仓库
    • 2. IDEA集成码云
    • 3. 码云复制GitHub项目

Git

Git是一个免费的、开源的分布式版本控制系统,可以快速高效的处理从小型到大型的各种项目

1. 安装Git

1. 下载Git

Git官网:Git (git-scm.com)

在这里插入图片描述
在这里插入图片描述

2. 安装Git

下载好了之后双击安装, 选择安装路径的时候最好选择安装在无中文无空格的目录下面

在这里插入图片描述

下面详细讲解每一步的选项的意思,嫌麻烦的可以直接一直无脑点下一步

下一步的勾选,根据自己的需要进行选择

在这里插入图片描述

这里选择编辑器,我们默认就是选择vim编辑器

在这里插入图片描述

是否需要修改分支的名字, 默认的分支名字是master, 第二个选项表示对每新建一个仓库都自己取主分支的名字

在这里插入图片描述

是否修改环境变量, 默认是中间的选项, 会修改环境变量, 让你在本地的cmd中也能使用git, 这里我们选择第一个

在这里插入图片描述

选择第三方后台客户端的连接协议

在这里插入图片描述

设置行末换行符, 默认的选择会自动检查Windows和Linux环境, 自动转换换行符

在这里插入图片描述

选择客户端类型

在这里插入图片描述

选择从远程库拉取到本地库的时候的合并模式

在这里插入图片描述

选择凭据管理器

image-20221206153304543

其他配置

在这里插入图片描述

实验室功能

在这里插入图片描述

安装完成

在这里插入图片描述

查看是否安装成功, 在桌面右键鼠标, 出现这两个选项, 即安装成功

在这里插入图片描述

点击Git Bash Here, 输入命令git --version, 出现安装的版本信息

在这里插入图片描述

2. Git常用命令

命令名称作用
git config -–global user.name 用户名设置用户签名
git config -–global user.email 邮箱设置用户签名
git init初始化本地库
git status查看本地库状态
git add 文件名添加到暂存区
git commit -m "日志信息" 文件名提交到本地库
git reflog查看历史记录
git reset --hard 版本号版本穿梭

1. 设置用户签名

在这里插入图片描述

验证用户签名是否设置成功, 打开C:\Users\用户名\.gitconfig文件, 就可以看到刚刚设置的用户签名

在这里插入图片描述

签名的作用是区分不同操作者身份.用户的签名信息在每一个版本的提交信息中能够查看到, 一次确认本次提交是谁做的.

Git首次安装必须设置一下用户签名,否则无法提交代码

注: 这里设置用户签名和将来登录GitHub(或者其他代码托管中心)的账号没有任何关系

2. 初始化本体库

在需要上传的项目的本地目录下右键鼠标, 打开Git Bash, 然后执行初始化命令初始化本地库

git init

在这里插入图片描述

然后本地目录下就会出现一个隐藏文件.git文件

在这里插入图片描述

也可以通过git bash查看

在这里插入图片描述

3. 查看本地库状态

git status

在这里插入图片描述

打印出的三行日志信息:

  1. 第一行表示在哪个分支上, 默认的是master
  2. 第二三行表示还没有任何提交

我们创建一个hello.txt

vim hello.txt

然后写入内容

(Linux命令, yy表示复制一行, p表示粘贴)

:wq保存退出
在这里插入图片描述
在这里插入图片描述

现在再来查看本地库的状态

在这里插入图片描述

可以看到出现了一个红色的文件, 代表该文件只是存在于工作区, git还没有追踪这个文件

4. 添加暂存区

git add

在这里插入图片描述

出现警告: 会切换换行符

此时再查看本地库的状态

在这里插入图片描述

文件变成了绿色, 表示添加成功, 我们还可以删除掉暂存区里面的文件, 但是工作区的文件不会被删掉

在这里插入图片描述

查看此时的本地库状态, 文件又变成了红色

5. 提交本地库

将暂存区的文件提交到本地库, 形成历史版本

git commit -m

在这里插入图片描述

再查看本地库状态

在这里插入图片描述

打印的两行日志信息:

  1. 第一行表示在主干分支
  2. 相较于之前的信息, 没有第二行, 说明已经有自己的版本信息了
  3. nothing to commit : 表示我已经提交过了, 并且没有新增, 也没有修改, 工作的树是干净的

6. 查看历史记录

git reflog

在这里插入图片描述

查看详细日志

在这里插入图片描述

7. 修改文件

修改hello.txt文件

在这里插入图片描述

查看此时本地库的状态

在这里插入图片描述

然后添加缓存,并提交本地库

在这里插入图片描述
在这里插入图片描述

8. 版本穿梭

git reset

现在我有三个版本了, 我现在需要穿越到第二个版本

在这里插入图片描述

只需要复制第二个版本的版本号, 然后执行git reset 命令, 当然也会再次新生成一个版本号

在这里插入图片描述

也可以再次穿回去

在这里插入图片描述

3. Git分支操作

在版本控制过程中, 同时推进多个任务, 为每个任务, 我们就可以创建每个任务的单独分支,

使用分支意味着程序员可以把自己的工作从开发主线上分离开来, 开发自己的分支的时候, 不会影响主线分支的运行

命令名称作用
git branch 分支名创建分支
git branch -v查看分支
git checkout 分支名切换分支
git merge 分支名把指定的分支合并到当前分支上

1. 查看分支

git branch -v

在这里插入图片描述

2. 创建分支

git branch

在这里插入图片描述

3. 切换分支

git checkout

在这里插入图片描述

在hot-fix分支下,修改hello.txt

在这里插入图片描述
在这里插入图片描述

4. 合并分支

git merge

切换到master分支, hello.txt文件内容没有变, 然后我们合并分支

在这里插入图片描述

产生冲突

合并分支时, 两个分支在同一个文件的同一个位置有两套完全不同的修改, Git无法替我们决定使用哪一个, 此时必须人为决定新代码的内容

GitHub操作

1. 创建远程仓库

创建远程仓库的方式有很多, 除了图中的两种之外, 也可以点击右上角的+号, 选择New repository

在这里插入图片描述

2. 远程仓库操作

命令名称作用
git remote -v查看当前所有远程地址别名
git remote add 别名 远程地址起别名
git push 别名/远程地址 分支推送本地分支上的内容到远程仓库
git clone 远程地址将远程仓库的内容克隆到本地
git pull 远程库地址/别名 远程分支将远程仓库对于分支最新内容拉下来后与当前本地分支直接合并

3. 团队内协作

在这里插入图片描述

然后写入需要添加的团队成员的用户名或者邮箱,添加成员

在这里插入图片描述

然后会生成一个邀请链接,复制邀请链接发送给邀请对象,邀请对象复制链接打开网页,可以选择同意或者婉拒邀请

4. ssh免密登录

C:/User/用户目录下打开git bash

在这里插入图片描述

执行如下命令:

ssh-keygen -t rsa -C 邮箱

执行命令之后, 敲3次回车, 会生成一个.ssh文件, 其中包含: 私钥 id_rsa, 公钥id_rsa.pub

在这里插入图片描述

然后复制公钥, 来到GitHub账号下的Settings

在这里插入图片描述

在这里插入图片描述

为这个ssh取名并将公钥粘贴, 然后点击Add ssh key

在这里插入图片描述

如下即添加成功

在这里插入图片描述

测试一下是否成功, 将本地分支上的内容推送到远程仓库, 推送成功可以在GitHub上查看到刚刚的推送内容

在这里插入图片描述

IDEA集成Git

1. 配置Git

我们创建一个maven项目,或者springboot项目, 配置好Git的安装目录: File -> Settings -> Version Control -> Git, 选择git的安装位置, 然后点击Test,出现版本信息,说明配置成功

在这里插入图片描述

2. 集成Git

选择VCS->create git repository

在这里插入图片描述

然后可以看到文件中也出现了.git文件

在这里插入图片描述

可以看到项目的pom.xml文件是红色的(由于我做的时候没有记录好, 所以用另一个代替了, 效果是一样的), 说明此时文件处于未被追踪状态, 还没有添加到暂存区

右键项目, 选择Git-> Add

在这里插入图片描述

此时我们可以看到文件变绿了

image-20221216175036072

然后就可以开始编写代码, 写完之后就可以提交, 右键项目, 选择Git->Commit Directory

在这里插入图片描述
选择好要提交的文件, 并填写提交信息, 最后点击Commit and Push

image-20221216175502935

3. 版本回退

在idea左下角点击Git, 可以看到你修改的各个版本, 右键想要回退到的一个版本, 选择Checkout Reversion,

在这里插入图片描述

4. 分支操作

1. 创建分支

右键项目,Git->Branches

在这里插入图片描述

或者在页面的右下角,点击master->new branch

在这里插入图片描述

2. 切换分支

点击需要切换的分支->checkout

在这里插入图片描述

点击当前所在的分支没有checkout选项, 说明此分支即为当前所在的分支, 如下,此时我所在的分支为master分支

在这里插入图片描述

3. 合并分支

我当前所在的分支是master, 要将origin/master分支的修改合并到master上, 点击要合并的分支, 选择Merge ‘origin/master’ into ‘master’ 就可以合并分支了

在这里插入图片描述

IDEA集成GitHub

1. 设置GitHub账号

File->Settings->Version Control -> GitHub

在这里插入图片描述

在这里插入图片描述

验证好之后就可以设置成功了

在这里插入图片描述

如果version control里面没有github, 可以去plugins里面下载, 然后退出重新进入就会有GitHub选项了

在这里插入图片描述

2. 分享项目到GitHub

Git -> GitHub -> share project on github

在这里插入图片描述
在这里插入图片描述

还可以添加描述信息, 然后点击share, 就可以上传到到GitHub上了, 开打GitHub就可以看到上传的项目了

在这里插入图片描述

3. 推送代码到远程库

右键项目 -> Git -> Push

设置ssh免密登录

在这里插入图片描述

把项目的ssh链接复制过来,起个名字, 然后点击ok

在这里插入图片描述

然后我们选用刚刚设置的登录方式, 我们就可以看到信息了, 然后点击push即可

在这里插入图片描述

4. 拉取远程库代码合并本地库

右键项目 -> Git -> pull

在这里插入图片描述

然后点击pull即可

5. 克隆代码到本地

我们把项目从本地删除, 然后打开idea, 可以看到我之前的那个aliyun项目是灰色的, 我们点击Get from VCS

在这里插入图片描述

然后复制项目的ssh地址过来, 点击clone, 即可完成克隆代码到本地

在这里插入图片描述

码云 Gitee

码云是开源中国推出的基于Git的代码托管服务中心,地址Gitee, 使用方式和GitHub一样, 而且是个中文网站

1. 创建仓库

完成注册之后, 点击右上角的“+”号, 选择新建仓库, 创建步骤与GitHub一样

在这里插入图片描述

2. IDEA集成码云

File -> Settings -> Plugins, 搜索gitee, 点击install安装插件

在这里插入图片描述

安装成功之后点击OK, 等待集成完成, 再次进入Settings, 会在Version Control中看见Gitee(如果没有看见就重启idea), 然后将我们的gitee账号添加进去

在这里插入图片描述

在这里插入图片描述

添加成功

在这里插入图片描述

对项目的提交, 推送, 拉取等操作与GitHub一致, 需要注意的是, 在做这一系列的操作的时候, 要将链接换成gitee的链接, url路径复制http协议的

在这里插入图片描述

3. 码云复制GitHub项目

点击新建仓库, 在右边有一个“在其他网站已经有仓库了吗? 点击导入”, 点击进入

在这里插入图片描述

我们可以选择从url导入, 复制仓库链接, 注意复制的链接应该是http协议的链接, 最后点击导入即可

在这里插入图片描述

还可以选择从GitHub导入, 验证登录你的GitHub账号, 就可以看到你在GitHub的所有项目了, 选择需要导入的项目,点击导入即可

在这里插入图片描述

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

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

相关文章

【sciter】历经一个月封装的Web组件库使用说明文档

Web 组件库 1、组件库总体架构 2、目录结构及组件库引入 使用时,只需要引入 CSS 样式文件及组件入口文件即可。 3、组件注意事项 1、当组件支持绑定事件时,事件名称命名规则为 Sc + DOM事件名称且首字母大写,即点击事件(click)对应(ScClick) 在 sciter 中,通过原生 D…

0127 排序 Day16

剑指 Offer 45. 把数组排成最小的数 输入一个非负整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。 示例 1: 输入: [10,2] 输出: "102" 示例 2: 输入: [3,30,34,5,9] 输出: "3033459" class…

浅谈 Flink 窗口

本次只记录最近对于窗口的新认知 关于窗口的详细知识可以参考如下链接: https://blog.csdn.net/mynameisgt/article/details/124223193 窗口的作用是为了在无限流上进行统计计算,数据到来时,则为此条数据开辟窗口。当 Flink 的时间大于等于窗口的结束时间时,触发这个窗口…

线程池的设计与原理解析(四)之---runWorker()方法

在调用start()方法,调用的就是worker的run方法,实际上调用的是runWorker()方法 public void run() {// 这个是核心方法,worker启动后的逻辑从这里进入runWorker(this);}简单的梳理runWorker的流程 如果构造worker的时候,指定了fi…

LinuxOS-IO-动静态库

文章目录AMC的了解动静态库1.理论理解2.如何制作一个库??了解实验:制作库交给别人使用生成静态库生成文件 删除文件 发布文件使用静态库?生成动态库使用动态库AMC的了解 Access:文件最近被访问的时间。 我们发现实际操作下来,文…

谁在「元宇宙」里卖咖啡?

作者 | 曾响铃 文 | 响铃说 全球首个全场景数实融合的「世界杯元宇宙」音乐盛典,已经落下了帷幕。 在14日与16日举办的两场动感地带世界杯音乐盛典中,既能看到周杰伦、李宇春、G.E.M。邓紫棋、周深等乐坛大咖,又能看到动感地带数智代言人橙…

字节跳动首发485道Java岗面试题(含答案)

就目前国内的面试模式来讲,在面试前积极的准备面试,复习整个 Java 知识体系将变得非常重要,可以很负责任地说一句,复习准备的是否充分,将直接影响你入职的成功率。 但很多小伙伴却苦于没有合适的资料来回顾整个 Java …

docker搭建gitlab 服务器

1、搜索gitlab镜像 # 查找Gitlab镜像 docker search gitlab # 拉取Gitlab镜像 docker pull gitlab/gitlab-ce:latest 2、启动Gitlab容器 docker run \-itd \-p 9000:80 \-p 9022:22 \-v /home/gitlab/etc:/etc/gitlab \-v /home/gitlab/logs:/var/log/gitlab \-v /home/gi…

drupal远程代码执行 (CVE-2018-7600)漏洞学习与复现

文章目录一、漏洞描述二、POC&EXP一、漏洞描述 drupal是一个开源PHP管理系统,架构使用的是php环境mysql数据库的环境配置。在Drupal 6.x,7.x,8.x系列的版本中,均存在远程代码执行漏洞。该漏洞产生的原因在于Drupal对表单渲染…

ADI Blackfin DSP处理器-BF533的开发详解58:DSP控制ADXL345三轴加速度传感器的应用(含源码)

硬件准备 ADSP-EDU-BF533:BF533开发板 AD-HP530ICE:ADI DSP仿真器 软件准备 Visual DSP软件 硬件链接 MEMS三轴加速度传感器 我做了一个三轴加速度传感器的子卡,插在这个板子上,然后写了一些有意思的应用程序。 硬件实现原理…

Nacos2.2版本发布了,我为其贡献了几行代码并适配了PostgreSQL插件

目录 一、背景 二、个人贡献 三、Nacos使用适配的PostgreSQL插件 3.1、插件源码工程项目结构: 3.2、打包加载插件 3.3、修改配置文件为PostgreSQL连接字符串 3.4、导入数据库脚本文件 四、总结 一、背景 Nacos 是 Dynamic Naming and Configuration-Servic…

计算机毕设Python+Vue心灵治愈服务平台(程序+LW+部署)

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

C++那些事之高效率开发C++/C

1.神器 目前开发C/C用的比较多的当属Vim、VS code、CLion。 Vim配上插件编写C/C效率高的不少。 VSCode配上自定义配置及快捷键、vim插件效率跟vim旗鼓相当。 CLion因其独特的CMakeLists.txt管理方式及强大的代码补全等功能,编写本地代码绝对好于前两者。 但是对…

什么是数据指标体系?

定义 对当前业务有参考价值的统计数据 作用 监控业务情况 通过拆解指标寻找当前业务问题 评估业务可改进的地方,找出下一步工作的方向 常用数据指标 谁:用户数据 干了什么:行为数据 结果怎样:业务数据 选好数据指标的通用…

大数据学习:学生排序

文章目录一、提出任务二、任务过程(一)准备数据1、在虚拟机上创建文本文件2、上传文件到HDFS指定目录(二)实现步骤1、创建Maven项目2、添加相关依赖3、创建日志属性文件4、创建学生实体类5、创建学生映射器类5、创建学生归并器类6…

Python变量类型教程

变量存储在内存中的值。这就意味着在创建变量时会在内存中开辟一个空间。 基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中。 因此,变量可以指定不同的数据类型,这些变量可以存储整数,小…

Springboot跨域处理的几种方式

作者简介 作者名:编程界小明哥 简介:CSDN博客专家,从事软件开发多年,精通Java、JavaScript,博主也是从零开始一步步把学习成长、深知学习和积累的重要性,喜欢跟广大ADC一起打野升级,欢迎您关注&…

基于springboot+mybatis的制造行业供应链管理系统

一、项目简介 基于springbootmybatis的制造行业供应链管理系统 二、实现功能 支持基础数据、用户管理、职务管理、修改密码、客户账号管理、组织管理 物料管理、物料短码、物料短码查询、物料分类维护 项目类别维护、分配采购员、设置最大最小库存、物料检验项管理 部门管…

Elasticsearch入门、API操作

文章目录概念倒排索引es的一些概念安装ES、Kibana总结索引库操作mapping映射属性创建索引库和映射查询索引库修改索引库删除索引库总结文档操作新增文档查询文档删除文档修改文档全量修改增量修改RestAPI引入依赖、初始化RestClient索引库 操作创建索引库删除索引库判断索引库是…

[附源码]Python计算机毕业设计黑河学院校友交流网站Django(程序+LW)

该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程 项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等…