git远程操作,推送【push】,拉取【pull】,忽略特殊文件,配置别名,标签管理

文章目录

    • 前言:
      • 新建远程仓库克隆
      • 推送【push】
      • 拉取【pull】
    • 配置git
      • 忽略特殊文件
      • 给命令配置别名
    • 标签管理
      • 理解标签
      • 创建标签
      • 操作标签

前言:

大家如果没有看过前几章git的基础操作的话,推荐先看一下,看完再来看这个远程操作,这样会对git有一个深的理解~~

  • GIT | 基础操作 | 初始化 | 添加文件 | 修改文件 | 版本回退 | 撤销修改 | 删除文件

  • git的分支的使用,创建分支,合并分支,删除分支,合并冲突,分支管理策略,bug分支,强制删除分支

接下来我们对本章的正题:

Git是一款分布式版本控制系统,它允许团队协同开发并追踪代码变更。远程操作是Git中的一个重要概念,它使得开发者能够在不同计算机之间共享和同步代码。这里也不多介绍,可以到百度上面自行寻找~~

本教程使用的是码云(gitee.com)来演示

新建远程仓库克隆

  • 首先就是要先注册一个自己的账号
  • 然后新建仓库

在这里插入图片描述

在这里插入图片描述

  • 这里有两种方法来clone仓库到本地,一个是https一个是ssh

  • 我们不使用https,原因是https比较简单

    • 首先就是配置用户名和邮箱然后(这里配置命令在初始git操作就讲述了)然后直接使用这个命令git clone 复制的仓库链接
  • 接下来我们就使用这个ssh来配置一下

    • 使用ssh方式克隆仓库,由于我们没有添加公钥到远端库中,所以会克隆失败,这里就不演示了,接下来我们就开始配置一下如何将公钥添加
  • 首先打开设置->ssh公钥->公钥

  • 那么这里的公钥在哪里获取呢,当然是在自己的电脑或者远端服务器上获取~~

在这里插入图片描述

  • 我这里就在自己电脑上演示了,远端服务器获取也是一样的~~
  • 输入一下命令,注意: 这里改成自己的邮箱~~
ssh-keygen -t ed25519 -C "shilinnull@163.com"

在这里插入图片描述

  • 然后会在上图的地址会显示地址,找到这个文件夹就可以了,其中第二个带有.pub的后缀是公钥,我们用记事本打开复制里面的内容

在这里插入图片描述

  • 然后粘贴到刚刚的那个网站的公钥栏里就可以了,标题随便写就可

在这里插入图片描述

  • 最后再使用ssh的方式克隆

在这里插入图片描述

  • OK,可以看到已经成功了~~

在这里插入图片描述

推送【push】

  • 我们对仓库里的文件进行修改

在这里插入图片描述

  • 然后进行添加

在这里插入图片描述

  • 最后一个关键的步骤,就是push
git push origin master

在这里插入图片描述

  • 然查看远端仓库,可以看到已经被修改了

在这里插入图片描述

拉取【pull】

  • 我们首先对远端仓库直接进行了修改

在这里插入图片描述

  • 而我们这次又对本地又进行了修改,然后再添加

在这里插入图片描述

  • 最后进行提交操作,发现是无法提交的,会有冲突

在这里插入图片描述

  • 这个时候就需要我们首先对远端仓库进行拉取
git pull origin master

在这里插入图片描述

在这里插入图片描述

  • 这里又回到冲突那里了,然后我们需要进行手动修改一下然后再进行提交

在这里插入图片描述

  • 然后再进行添加提交操作

在这里插入图片描述

  • 可以看到也已经是有了~~

在这里插入图片描述

配置git

忽略特殊文件

  • 在日常开发中,我们有些文件不想提交到远程仓库,那么怎么做呢?

    • 这个时候我们就需要在自己仓库的根目录下建立一个特殊的文件.gitignore,把需要忽略的文件名填进去,git提交的时候就会自动忽略这些文件了~~
  • 我们来演示一下

  • 这里的*代表是通配符,也就是将后缀.txt的文件都忽略

在这里插入图片描述

  • 我们查看一下git的状态,可以看到是没有文本.txt在这里插入图片描述

  • 再次添加后提交

在这里插入图片描述

  • 来到我们的远程仓库查验证一下

在这里插入图片描述

  • 但有些时候,你就是想添加⼀个文件到 Git,但由于这个文件被 .gitignore 忽略了,根本添加不了,那么可以⽤ -f 强制添加:
git add -f [filename]
  • 或者你发现,可能是 .gitignore 写得有问题,需要找出来到底哪个规则写错了,比如说 a.so 文件
    是要被添加的,可以用 git check-ignore 命令检查:
git check-ignore -v file.txt
  • Git 会告诉我们, .gitignore 的第几行规则忽略了该⽂件,于是我们就可以知道应该修订哪个规则。

还有些时候,当我们编写了规则排除了部分文件时,例如:

# 排除所有.开头的隐藏⽂件:
.*
  • 但是我们发现 .* 这个规则把 .gitignore 也排除了。虽然可以⽤ git add -f 强制添加进去,但有强迫症的同学还是希望不要破坏 .gitignore 规则,这个时候,可以添加⼀条例外规则:
# 排除所有.开头的隐藏⽂件:
.*# 不排除.gitignore
!.gitignore
  • 把指定文件排除在 .gitignore 规则外的写法就是 ! +文件名,所以,只需把例外文件添加进去即可

给命令配置别名

  • 在使用git的时候,我们有的时候使用命令太长太麻烦了,我们可以将git命令进行重命名成一个简短的,我们这样操作:

  • 比如我们将git status简写成git st

  • 这里的alias.改成自己想要改成的名字

git config --global alias.st status
  • --global参数是全局参数,也就是这些命令在这台电脑的所有Git仓库下都有⽤。如果不加,那只针对当前的仓库起作用

  • 这样就可以进行重命名成功了,原来的名字也是可以用的~~

在这里插入图片描述

标签管理

理解标签

  • 这个标签,我们可以简单理解是对某一次的commit的一个标识,也就是相当于起了一个别名
  • 对于难以记住的commit id,tag就可以很好的解决这个问题,标签就可以定位到某一个重要的版本,使用标签就可以快速定位到那个版本,这样就很方便快捷

创建标签

  • 首先查看一下在哪个分支上,如果需要打标签到哪个分支上就要切换到哪个分支上
git branch

在这里插入图片描述

  • 然后就可以打标签了 tag后面跟上标签名字就可以
git tag v1.0
  • 打完标签肯定是要查看一下
git tag

在这里插入图片描述

  • 这个标签是没有指定打到哪个commit id上的,所以就是默认,默认就是打在最新提交的commmit上的

  • 那么我们要在指定commit id上打标签,我们可以在后面跟上commit id

git tag v0.9 741df88

在这里插入图片描述

注意: 这里的标签可不算按照时间列出的,是按照字母进行排序的

  • 我们还可以查看标签信息:show后面跟上标签名字,就可以查看具体信息了
git show v1.0

在这里插入图片描述

  • 我们这里还可以指定带有说明的标签,-a指定别名,-m指定说明文字
git tag -a [name] -m "XXX" [commit_id]

在这里插入图片描述

操作标签

  • 如果标签打错了,我们还可以删除 -d后面跟上标签名字
git -d v0.8

在这里插入图片描述

  • 因为创建的标签都只存储在本地,不会⾃动推送到远程。所以,打错的标签可以在本地安全删除

  • 如果要推送某个标签到远程,可以使用命令

git push origin <tagname>

在这里插入图片描述

  • 我们查看远程仓库,可以看到已经推送成功了
    在这里插入图片描述

  • 如果本地仓库有很多标签,可以一次性全部推送到远端

git push oringe --tags

在这里插入图片描述

  • 也是相当的完美已经推送上去了
    在这里插入图片描述

  • 如果要进行删除标签,就要先从本地仓库里删除,然后再推送一次,进行更新

  • 冒号后面跟上标签的名字即可~~

git push origin :v0.9

在这里插入图片描述

  • 我们再次来远端仓库
  • 已经完美删除了~~

在这里插入图片描述

好了,git的远程操作到这里就结束了,希望大家都可以掌握这些技能,这是对能力的一大提升,也希望大家努力学习!加油!

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

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

相关文章

2023年总结:反复纠结与成长的一年

前言 这是我第五年写年度总结&#xff1a; 《2022年总结&#xff1a;道阻且长&#xff0c;行则将至》 《2021年总结&#xff1a;前路有光&#xff0c;初心莫忘》 《2020年总结&#xff0c;所有努力只为一份期待》 《2019年总结&#xff0c;平凡的我仍在平凡的生活》 现在…

【超图】SuperMap iClient3D for WebGL/WebGPU —— 数据集合并缓存如何控制对象样式

作者&#xff1a;taco 最近在支持的过程中&#xff0c;遇到了一个新问题&#xff01;之前研究功能的时候竟然没有想到。通常我们控制单个对象的显隐、颜色、偏移的参数都是根据对象所在的图层以及对象单独的id来算的。那么问题来了&#xff0c;合并后的图层。他怎么控制单个对象…

面试官:SpringBoot项目中,要如何1秒实现异步接口?

今年IT寒冬&#xff0c;大厂都裁员或者准备裁员&#xff0c;作为开猿节流主要目标之一&#xff0c;我们更应该时刻保持竞争力。为了抱团取暖&#xff0c;林老师开通了《知识星球》&#xff0c;并邀请我阿里、快手、腾讯等的朋友加入&#xff0c;分享八股文、项目经验、管理经验…

STM32逆变器方案

输入电压&#xff1a; 额定输入电压&#xff1a;DC110V 输入电压范围&#xff1a;DC77-137.5V 额定输出参数 电压&#xff1a;200V5%&#xff08;200VAC~240VAC 可调&#xff09; 频率&#xff1a; 42Hz0.5Hz&#xff08;35-50 可调&#xff09; 额定输出容量&#xff1a;1…

关于“Python”的核心知识点整理大全45

目录 15.4.6 绘制直方图 die_visual.py 注意 15.4.7 同时掷两个骰子 dice_visual.py 15.4.8 同时掷两个面数不同的骰子 different_dice.py 15.5 小结 第 16 章 16.1 CSV 文件格式 16.1.1 分析 CSV 文件头 highs_lows.py 注意 16.1.2 打印文件头及其位置 highs_l…

适合穷人创业项目低成本生意,2024热门创业项目

回收生意&#xff0c;一个月赚20万&#xff1f;别不信&#xff01; 我们两个人靠回收倒闭的酒店和KTV的店内物品&#xff0c;一个月赚了20多万。大件就是家具家电、厨房设备、点唱机&#xff0c;小件就是床品、餐具&#xff0c;只要能卖钱的都收。 卖给谁呢&#xff1f;大部分…

office bookmarks

Word2007Util.java-CSDN博客

webstorm中直接运行ts(TypeScript)

参考&#xff1a;https://www.cnblogs.com/yangfanjie/p/12036118.html 1&#xff1a;安装ts: npm install -g typescript 2&#xff1a;安装直接运行所需依赖包&#xff1a; npm install -g ts-node 3&#xff1a;在设置中安装安装插件后重启 4&#xff1a;重启后就会发现在…

Solana 生态铭文跨链桥 Sobit 是何神圣?其场外白名单已达到1200U

在短暂的沉寂&#xff0c;在与 Solana 手机 Saga 联合生态 Meme 币 Bonk 掀起一波 meme 浪潮&#xff0c;以及GPU 计算网路Render network 宣布将从公链Polygon迁往Solana 后&#xff0c;Solana 生态再次迎来爆发。随着 SOL 代币在 12 月暴涨&#xff0c;SOL 也在市值上超越了 …

前端进度条和进度条流光效果

前言 进度条的实现学习这个的,这里只是记录下自己笔记 https://bytefish.medium.com/css-awesome-trick-how-to-create-a-progress-bar-that-changes-color-according-to-progress-be9652ebdd1c 在线演示地址(原作者) https://codepen.io/bytefishmedium/pen/VwXYKQK 在线演示…

opencv和gdal的读写图片波段顺序问题

最近处理遥感影像总是不时听到 图片的波段错了&#xff0c;一开始不明就里&#xff0c;都是图片怎么就判断错了。 1、图像RGB波段顺序判断 后面和大家交流&#xff0c;基本上知道了一个判断标准。 一般来说&#xff0c;进入人眼的自然画面在计算机视觉中一般是rgb波段顺序表示…

Linux账号和权限管理

目录 前言 一、管理用户账号 1、Linux系统中用户账号类型 2、用户标识UID的分类 3、用户账号文件 4、用户账号的初始配置文件 5、用户账号的管理命令 5.1 useradd 5.2 usermod 5.3 passwd 5.4 userdel 二、管理组账号 1、Linux系统中组账号类型 2、组标识号GID的…

drf知识--07

回顾之视图层 # 两个视图基类&#xff1a; from rest_framework.views import APIView&#xff1a; 包装新的request、去除csrf认证、执行三大认证和处理全局异常 -as_view -dispatch -parser_class -render_class from rest_framewo…

5.8 Linux 服务实战

一、项目概述 项目名称&#xff1a;web 网站 项目时间&#xff1a;2022.7.18-2022.7.24 项目需求&#xff1a; ① 客户端使用kickstart部署4台虚拟机(centos7.9)&#xff0c;所有服务器IP都为静态IP。② 客户端使用XShell的密钥登陆跳板机③ 所有后端服务器全部通过跳板机来…

Shell命令与Linux操作系统:深入理解其原理和功能(2/2)

在当今数字化时代&#xff0c;操作系统的安全性和稳定性对于个人用户和企业都至关重要。Linux&#xff0c;作为一个广泛使用的操作系统&#xff0c;其强大的文件权限系统是保护系统安全的核心机制之一。无论是在服务器管理、软件开发还是日常使用中&#xff0c;有效地管理和理解…

MongoDB文档操作

3.3 文档操作 3.1 文档介绍 文档的数据结构和 JSON 基本一样。 所有存储在集合中的数据都是 BSON 格式。 BSON 是一种类似 JSON 的二进制形式的存储格式&#xff0c;是 Binary JSON 的简称。 文档是一组键值(key-value)对(即 BSON)&#xff0c;一个简单的文档例子如下&…

输入日期,计算当前日期是这一年中的第几天(涉及闰年问题)

一、应用到的知识&#xff1a;闰年问题&#xff0c;数组&#xff0c;for循环&#xff0c;命令行参数&#xff0c;atoi函数 1. 闰年问题&#xff1a; 闰年 是指该年有366日&#xff0c;即较平常年份多出一日。每400年就会有一次闰年&#xff1b;或者年份是4的倍数&#xff0c;但…

Flowable-升级为7.0.0.M2-第二节

目录 替换变化的类和配置把javax.servlet 替换为 jakarta.servlet修改redis的配置配置logging.level.org.springframework.boot.autoconfigureerror避免影响视听 替换变化的类和配置 把javax.servlet 替换为 jakarta.servlet import javax.servlet.ServletContext; import ja…

【Linux基础】9. 用户管理

文章目录 【 1. 用户基本管理 】1.1 useradd 添加用户1.2 passwd 更改用户密码1.3 su 切换用户1.4 userdel 删除用户 【 2. 用户的组 】2.1 more 查看系统所有组2.2 显示用户的组2.3 更改用户的组 【 3. 环境变量 】 【 1. 用户基本管理 】 1.1 useradd 添加用户 全称作用use…