Git常用操作:基础命令、生成公钥、webhook同步

news2025/2/26 22:03:28

这里写目录标题

  • 下载安装GIT
  • 基础命令
    • 克隆
    • 初始化
    • 与仓库建立连接
    • 下拉代码
    • 提交代码
    • 清空本地缓存
  • 本地生成GIT公钥
  • webhook(本地-码云-服务器代码同步)

下载安装GIT

此处只介绍windows系统下的安装,linux一般都是自带git(自行百度)

下载Git 官方地址为:https://git-scm.com/download/wi
在这里插入图片描述
下载好对应的安装程序打开一路点击下一步即可,最终鼠标右侧菜单栏出现对应部分即为安装成功
在这里插入图片描述

  • 具体详细的安装教程请看https://www.cnblogs.com/ximiaomiao/p/7140456.html
  • 如何官网下载速度太慢请看https://blog.csdn.net/weixin_44198965/article/details/99686507

基础命令

记录下常用的git基础命令

克隆

git clone 仓库地址

其中仓库地址大概有两种

  • 其一类似于:https://gitee.com/******
  • 其二类似于:git@gitee.com:******,这种码云注册公钥后每次提交下拉就不用验证身份了

初始化

git init

与仓库建立连接

git remote add origin git@gitee.com******

下拉代码

通常命令

git pull

初始化仓库后的首次下拉,需要指定分支

git pull origin master

强制下拉

git fetch --all && git reset --hard origin/master && git pull

提交代码

检查当前代码差异

git status

提交所有修改

git add .

提交本次修改备注(描述一下这次提交改了什么东西,方便版本追溯)

git commit -m 'hello world'

通常提交命令

git push

初始化仓库后的首次提交

git push -u origin master

清空本地缓存

通常用于新增.gitignore文件中的排除文件

git rm -r --cached .

本地生成GIT公钥

将git公钥添加到码云可以让每次代码同步时无需校验身份;

生成本地公钥

ssh-keygen -t rsa -C "xxxxx@xxxxx.com"

注意:这里的 xxxxx@xxxxx.com 只是生成的 sshkey 的名称,并不约束或要求具体命名为某个邮箱。现网的大部分教程均讲解的使用邮箱生成,其一开始的初衷仅仅是为了便于辨识所以使用的邮箱。
查看公钥

cat ~/.ssh/id_rsa.pub

可能会用到全局注册

git config --global user.email  "you@example.com" //邮箱为你的注册码云账号时绑定的邮箱
git config --global user.name  "Your Name"        //用户名为你码云注册时的登录名

公钥示例

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC6SAt7JIuZRXECYH+WKvDjPb6Zf22L2p6U******

webhook(本地-码云-服务器代码同步)

简单讲就是再提交代码到远程仓库时,项目生成环境自动同步最新的代码版本(我认为的热传递),下面以linux系统为例展示下本地--码云--项目服务器代码同步
1.进入码云网站注册/登录账户,码云传送门
在这里插入图片描述
注册时有个邮箱,不是邮箱注册的到设置里面设置一下,最终要拿到邮箱(设置-邮箱管理)和登录名(码云个人主页@后面的内容),相关码云位置随着码云更新可能会变

2.新建码云的项目仓库,此处可以拿到一个仓库地址例如:git@gitee.com:******
在这里插入图片描述
3.本地电脑安装git,根据上面生成公钥的方法拿到本地公钥(此处不展示),添加到码云,使用基础命令测试本地与码云的代码同步
在这里插入图片描述
4.本地无误后,进入linux服务器切换www用户

su www

可能会出现无法切换的情况,如下图:
在这里插入图片描述
这是因为用户的shell,禁止了www用户登录,修改/etc/passwd文件,将“/sbin /nologin”改成“/bin/bash”。(如下图):
在这里插入图片描述
2.创建项目根目录

mkdir new-working-system

目录名根据自己的项目自行更改,创建好后如下:
在这里插入图片描述

3.进入项目目录中,初始化仓库(注意要用www用户),生成服务器公钥添加到码云(不介绍)

cd new-working-system/

4.初始化仓库与远程仓库建立链接

git init
git remote add origin git@gitee.com:******
git pull origin master

如何git提示没有指定分支

git branch --set-upstream-to=origin/master master

5.测试一下服务器与码云的git同步效果,无误后在项目根目录提交webhook文件(此处php展示)

$cmd="git fetch --all && git reset --hard origin/master && git pull";
$r= shell_exec($cmd);
print_r($r);

6.将webhook文件的服务器访问地址添加至码云仓库中,添加后,修改文件进行测试,查看是否成功实现三端同步即可。
在这里插入图片描述

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

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

相关文章

linux跑python控制台输出日志无内容或者断掉

问题描述 训练时候的输出日志要么没有,要么就是输出了一点点就没有了(突然不输出内容了),记得之前也出现过训练中途突然日志不打印了,当时以为服务器原因可能被挤掉了。但这次是还没开始并且试过很多次了。 所用语句…

85. `if __name__ == “__main__“`的作用和原理(适合小白)

85. if __name__ "__main__"的作用和原理(适合小白) 文章目录 85. if __name__ "__main__"的作用和原理(适合小白)1. 代码体验2. __name__的作用2.1 模块知识回顾2.2 __name__的作用 3. if __name__ "…

水果手机SJ流程

注册教程 第一步:注册新邮箱。 首先,你需要一个邮箱账号,国内126.QQ.163等都可以,只要你没有用它注册过AppleID。 第二步:注册。 复制链接到浏览器,打开进入appleID注册界面:https://appleid.apple.com/account#!&…

采用UWB(超宽频)技术开发的java版智慧工厂定位系统源码

室内定位系统源码,采用UWB定位技术开发的智慧工厂定位系统源码 技术架构:单体服务 硬件(UWB定位基站、卡牌) 开发语言:java 开发工具:idea 、VS Code 前端框架:vue 后端框架:s…

Linux内核(十七)Input 子系统详解 IV —— 配对的input设备与input事件处理器 input_register_handle

文章目录 input_handle结构体详解配对的input设备与input事件处理器实例input核心层对驱动层和事件层之间的框架建立流程图 本文章中与input子系统相关的结构体可参考input子系统结构体解析 input函数路径:drivers/input/input.c input_handle结构体详解 input_ha…

算法之美:探究左右元素和的差值

本篇博客会讲解力扣“2574. 左右元素和的差值”的解题思路,这是题目链接。 先来审题: 以下是输出示例: 以下是提示: 本题的关键在于,“左和”和“右和”是如何变化的。下面我通过代码来演示。 一上来,…

唐朔飞计算机组成原理常见的寄存器(时不时就更新)

EINT中断允许触发器 如果是1代表开中断就是可以中断 如果0表示关中断 不能触发中断程序,1.响应中断的条件是当设备有请求并且 中断允许触发器为1的时候 时间是指令执行周期结束的时候。2.实现多重中断的条件是 中断允许触发器置为1并且 有更高的服务程序才能除法多重…

【数据结构】- 几个步骤教你认识并实现一个链表之带头(哨兵位)双向循环链表(上)

文章目录 前言🌟一、带头双向循环链表🌟二、带头双向循环链表结构图:🌟三、带头双向循环链表代码实现:🌏3.1头插:💫3.1.1头插流程图💫3.1.2 相较于无头单向非循环链表&am…

高边输出和低边输出

文章目录 高边和低边高边驱动(HSD,High Side Drive)和低边驱动(LSD,Low Side Drive)应用示例举例高/低边驱动芯片 按照开关闭合时开关输出的电压高低,可以分为高边输出和低边输出开关。 高边和低…

ubuntu 20.04 通过 sshfs 共享文件夹到 windows

功能需求 最近需要 让 ubuntu 共享文件夹,windows 来映射成磁盘或者共享目录的方式使用 windows 的文件夹可以通过 VMware Workstation Pro 虚拟机【共享文件夹】设置,轻松的实现 文件共享,不过这里的共享是 单向的,也就是 文件夹…

Windows服务器加固

文章目录 一、 账户安全要求二、 权限安全要求三、 通用安全管理四、 日志审计安全五、网络协议安全 一、 账户安全要求 1、 账户错误登录锁定 次数(8) 开始->运行->输入“gpedit.msc”打开本地组策略编辑器,浏览 路径:“…

快来学习SQL数据库,MySQL的保姆级安装,MySQL的入门使用以及DBeaver软件的安装

SQL数据库 无处不在的SQL,不管是何种开发语言,亦或是何种开发方向,SQL都是开发人员无法绕开的话题。除了一门趁手的编程语言外,SQL语言也是开发人员人人必备的开发技能。 数据库有三个层级:库——表——数据 市面上的…

路径规划算法:基于斑点鬣狗优化的路径规划算法- 附代码

路径规划算法:基于斑点鬣狗优化的路径规划算法- 附代码 文章目录 路径规划算法:基于斑点鬣狗优化的路径规划算法- 附代码1.算法原理1.1 环境设定1.2 约束条件1.3 适应度函数 2.算法结果3.MATLAB代码4.参考文献 摘要:本文主要介绍利用智能优化…

第五十八章 Unity 发布PC平台

本章节我们介绍一些如何打包游戏到PC平台,这里重点介绍如何制作Windows操作系统下的游戏包。首先,我们创建一个“PcDemo”工程,然后简单布置一下场景内容,如下 想要打包发布Unity项目,我们可以在菜单栏选择“File”→ …

PHP 面向对象,构造函数,析构函数,继承,方法的重写,接口抽象类,static,final,this,parent,self的异同和作用

PHP 面向对象,构造函数,析构函数,继承,方法的重写,接口抽象类,static,final,this,parent,self的异同和作用 PHP 面向对象1.构造函数2.析构函数3.继承4.方法重…

520到了还有人不会表白吗——Python GUI实现爆火抖音的弹窗表白

文章目录 源码1.正常版本2.BT(变态)版本 代码实现(正常版本)结束语 最近抖音爆火的窗口表白 心中的女孩如果收到了,肯定会看着满屏幕的窗口感动不止,对你倾心 本文是正常版本的源码,BT版本的源码链接待审核 源码 1.正常版本 点击喜欢或者不喜…

【Linux】KMP算法

目录 主题 橙色 主题 好了,解释清楚这个表是什么之后,我们再来看如何使用这个表来加速字符串的查找,以及这样用的道理是什么。如图 1.12 所示,要在主字符串"ababababca"中查找模式字符串"abababca"。 如果在…

源码解读guava cache get方法的秘密

guava cache是谷歌开源的一种本地缓存,实现原理类似于ConcurrentHashMap,使用segments分段锁,保证线程安全,支持高并发场景。同时支持多种类型的缓存清理策略,包括基于容量的清理、基于时间的清理、基于引用的清理等。…

嵌入式系统中常见的摄像头接口

MIPI CSI:MIPI CSI(Mobile Industry Processor Interface Camera Serial Interface)是一种专用于手机和移动媒体设备的摄像头接口标准。它具有高速传输、低功耗和可靠性等优点,已经成为现代嵌入式摄像头的主要接口之一。 USB cam…

day31_JDBC

今日内容 零、 复习昨日 一、数据库连接池 二、反射 三、封装DBUtil 零、 复习昨日 三表关联 create table teacher ( tid int, tname varchar(10) ) insert into teacher values(1,老邱); insert into teacher values(2,老王);-- 三表关联 -- 查询学生以及班级信息 select * f…