Github学习

news2024/11/26 16:33:22

1.Git与Github

区别:

Git是一个分布式版本控制系统,简单的说就是一个软件,用于记录一个或若干个文件内容变化,以便将来查阅特点版本修订情况的软件。

Github是一个为用户提高Git服务的网站,简单说就是一个可以放代码的地方。Github除了提供Git的Web界面外,还提供了订阅,关注,讨论组,在线编辑器等丰富的功能。

2.Git安装

官网安装

3.Git的使用

Git本地操作的三个区域:

Git Repository(Git 仓库):最终确定的文件保存到仓库,成为一个新的版本,并且对他人可见

暂存区:暂存已经修改的文件最后统一提交到git仓库中

工作区(Working Directory):添加,编辑,修改文件等动作

本地仓库操作

1.在安装好后首先使用需要进行全局配置

桌面空白处右键,点击 Git Bash Here 打开Git命令行窗口

git config --global user.name "用户名"

get config --global user.email "邮箱地址"

设置用户名和邮箱,把参数去掉之后可以查看设置是否成功

2.创建仓库

当我们需要人Git去管理某个新项目或已存在项目的时候,就需要创建仓库了。创建仓库时使用的目录不一定要求是空目录,非空目录也可以,所有目录不能存在中文。

创建文件夹

进入文件夹

Git仓库初始化

git init

执行后会在项目目录下创建 .git的隐藏目录,不能删除,也不能随意修改其中的内容。

3.Git常用指令操作

查看当前状态: git status

添加到缓冲区: git add 文件名

注:git add 指令,可以添加一个文件,也可以同时添加多个文件

        git add 文件名

        git add 文件名1 文件名2 文件名3 ...

        git add .   添加当前目录到缓冲区

提交至版本库: git commit -m "注释内容,提交说明"

4.版本回退

1.查看版本,确定需要回去的时刻点

git log

git log --pretty=oneline     放在一行显示

2.回退

git reset --hard 提交编号(id)

回退之后,要想再回到之前最新的版本时,需要使用指令去查看历史操作,以得到最新的commit id

git reflog

远程仓库

1.线上创建

github点击create repositroy即可

2.基于http协议使用

1.创建一个空目录,名称随便,进入目录

2.使用clone指令克隆线上仓库到本地

git clone 线上仓库地址

3.在仓库上做对应的操作

提交暂存区

提交本地仓库

提交线上仓库

git push

首次往线上仓库提交时候会失败,报错或弹窗,是因为鉴权没过,需要修改 ".git/config"文件内容

添加gitHub的用户名和密码,如果是弹窗,则选择浏览器方式授权即可

拉取线上仓库 

git pull

3.基于ssh协议

相比于https方式,只是影响github对于用户的身份鉴权方式,对于git的具体操作不影响

1.生成客户端公私钥文件(需安装OpenSSH)

ssh-keygen -t rsa -C "邮箱"
# 影响为登录github的邮箱即可

2.将公钥上传到Github 

 把生成的密钥文件打开,将其中的内容复制上传至github

分支管理

1.相关指令

查看分支: git branch

创建分支: git branch 分支名

         git push --set-upstream origin [master]   创建完成之后执行该命令,于远程仓库建立连接,master为自定义分支名称

切换分支: git checkout 分支名

切换并创建分支: git checkout -b 分支名

删除分支: git branch -d 分支名

        删除分支时,要先退出要删除的分支,然后再删除

合并分支: git merge 被合并的分支名

2.冲突的产生与解决

发送冲突时先git pull代码,此时git已经将线上与本地仓库的冲突合并到对应的文件中,需要手动打开对应文件,保留需要的,删除不需要的。最后重新提交。

忽略文件

        提交代码时有些文件长时间不需要提交,可以将该文件设置为忽略文件。忽略文件需要新建一个 .gitignore的文件,该文件用于声明忽略文件或不忽略文件的规则,规则对当前目录及其子目录生效。

        该文件因为没有文件名,没办法直接在windows目录下直接创建,可以通过命令行Git Bash来touch创建。

在.gitignore文件中编写规则,#开头为注释

/文件夹名称/      过滤整个文件夹

*.zip       过滤所有.zip文件

/文件夹名称/文件名    过滤某个具体文件

!index.php     不过滤具体某个文件

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

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

相关文章

摩苏尔大坝形变监测

摩苏尔大坝,是伊拉克最大的大坝。它位于底格里斯河35公里,北距摩苏尔市,这是一座粘土质地的水坝,高113米,长3.2公里,于1986落成。 大坝建成后不久,大坝就遇到了由软石膏地基造成的一些结构性问题…

09.zabbix自定义模块并使用

zabbix自定义模块并使用 根据tcp的11中状态获取值,进行批量配置监控项 [rootyunlong66 ~]# cat /etc/zabbix/zabbix_agentd.d/tcp.conf UserParameterESTABLISHED,netstat -antp |grep -c ESTABLISHED UserParameterSYN_SENT,netstat -antp |grep -c SYN_SENT Use…

基于深度学习神经网络的AI图像PSD去雾系统源码

第一步:PSD介绍 以往的研究主要集中在具有合成模糊图像的训练模型上,当模型用于真实世界的模糊图像时,会导致性能下降。 为了解决上述问题,提高去雾的泛化性能,作者提出了一种Principled Synthetic-to-real Dehazing (…

软件体系结构风格

目录 一、定义 二、.经典软件体系结构风格: 1.管道和过滤器 2.数据抽象和面向对象系统 3.基于事件系统(隐式调用) 4.分层系统 5.仓库 6.C2风格 7.C/S 8.三层C/S 9.B/S 题: 一、定义 软件体系机构风格是描述某一特定应用…

【CSP CCF记录】202104-1 灰度直方图

题目 过程 #include<bits/stdc.h> using namespace std; int n,m,L; int A[502][502]; int main() {cin>>n>>m>>L;int h[L]{0};for(int i0;i<n;i){for(int j0;j<m;j){cin>>A[i][j];h[A[i][j]];}}for(int i0;i<L;i)cout<<h[i]<…

第四届上海理工大学程序设计全国挑战赛 J.上学 题解 DFS 容斥

上学 题目描述 usst 小学里有 n 名学生&#xff0c;他们分别居住在 n 个地点&#xff0c;第 i 名学生居住在第 i 个地点&#xff0c;这些地点由 n−1 条双向道路连接&#xff0c;保证任意两个地点之间可以通过若干条双向道路抵达。学校则位于另外的第 0 个地点&#xff0c;第…

SeetaFace6人脸活体检测C++代码实现Demo

SeetaFace6包含人脸识别的基本能力&#xff1a;人脸检测、关键点定位、人脸识别&#xff0c;同时增加了活体检测、质量评估、年龄性别估计&#xff0c;并且顺应实际应用需求&#xff0c;开放口罩检测以及口罩佩戴场景下的人脸识别模型。 官网地址&#xff1a;https://github.co…

Rerank进一步提升RAG效果

RAG & Rerank 目前大模型应用中&#xff0c;RAG&#xff08;Retrieval Augmented Generation&#xff0c;检索增强生成&#xff09;是一种在对话&#xff08;QA&#xff09;场景下最主要的应用形式&#xff0c;它主要解决大模型的知识存储和更新问题。 简述RAG without R…

【前端系列】什么是yarn

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

Python 全栈系列245 nginx 前端web页面透传

说明 过去的几年&#xff0c;我已经构造了很多组件&#xff0c;从图的角度来看&#xff0c;完成了很多点。这些点的单点测试看起来都不错&#xff0c;但是因为没有连起来&#xff0c;所以无法体现系统价值。好比发动机的马力虽然大&#xff0c;但是没有传动轴&#xff0c;那就…

重学JavaScript核心知识点(二)—— 详解Js中的模块化

详解Js中的模块化 1. 模块化的背景2. 来看一个例子3. 优雅的做法 —— 创建模块对象4. 模块与类&#xff08;class&#xff09;5. 合并模块6. 动态加载模块 1. 模块化的背景 JavaScript 在诞生之初是体积很小的&#xff0c;早期&#xff0c;它们大多被用来执行独立的脚本任务&…

Shell编程之循环语甸与函数

for 遍历循环 1&#xff09;for 变量 in 取值列表 for i in $(seq 1 10) do 命令序列 .... done 2&#xff09;for ((变量初始值; 变量范围; 变量的迭代方式)) for ((i1; i<10; i)) do 命令序列 .... done IFS for循环取值列表分隔符 set | grep IFS …

---随笔--Java实现TCP通信(双端通信接收与发送)

---随笔--Java实现TCP通信&#xff08;双端通信接收与发送&#xff09; 引言1. 什么是TCP通信2. 服务器与客户端核心代码2.1 服务器ServerSocket端核心代码2.2 用户Socket端核心代码2.3 小贴士之关于try-with-resources自动关闭资源的使用 3. 具体服务器端实现4. 具体客户端实现…

WordPress 、Typecho 站点的 MySQL/MariaDB 数据库优化

今天明月给大家分享一下 WordPress 、Typecho 站点的 MySQL/MariaDB 数据库优化&#xff0c;无论你的站点采用是 WordPress 还是 Typecho&#xff0c;都要用到 MySQL/MariaDB 数据库&#xff0c;我们以 MySQL 为主&#xff08;MariaDB 其实跟 MySQL 基本没啥大的区别&#xff0…

STC8增强型单片机开发【LED呼吸灯(PWM)⭐⭐】

目录 一、引言 二、硬件准备 三、PWM技术概述 四、电路设计 五、代码编写 EAXSFR&#xff1a; 六、编译与下载 七、测试与调试 八、总结 一、引言 在嵌入式系统开发中&#xff0c;LED呼吸灯是一种常见的示例项目&#xff0c;它不仅能够展示PWM&#xff08;脉冲宽度调制…

解决 Content type ‘application/json;charset=UTF-8‘ not supported

文章目录 问题描述原因分析解决方案参考资料 问题描述 我项目前端采用vue-elementUi-admin框架进行开发&#xff0c;后端使用SpringBoot&#xff0c;但在前后端登录接口交互时&#xff0c;前端报了如下错误 完整报错信息如下 前端登录接口JS代码如下 export function login(…

Busybox 在 Docker 中的部署和启动

可以使用 docker pull 指令下载 busybox:latest 镜像&#xff1a; PS C:\Users\yhu> docker pull busybox:latest latest: Pulling from library/busybox ec562eabd705: Pull complete Digest: sha256:5eef5ed34e1e1ff0a4ae850395cbf665c4de6b4b83a32a0bc7bcb998e24e7bbb St…

网安面经之文件包含漏洞

一、文件包含漏洞 1、文件包含漏洞原理&#xff1f;危害&#xff1f;修复&#xff1f; 原理&#xff1a;开发⼈员⼀般希望代码更灵活&#xff0c;所以将被包含的⽂件设置为变量&#xff0c;⽤来进⾏动态调⽤&#xff0c;但是由于⽂件包含函数加载的参数没有经过过滤或者严格的…

Selenium 自动化 —— 一篇文章彻底搞懂XPath

更多关于Selenium的知识请访问“兰亭序咖啡”的专栏&#xff1a;专栏《Selenium 从入门到精通》 文章目录 前言 一、什么是xpath&#xff1f; 二、XPath 节点 三. 节点的关系 1. 父&#xff08;Parent&#xff09; 2. 子&#xff08;Children&#xff09; 3. 同胞&#xff08;S…

LLM量化

Efficient Finetuning prefix tuning 针对每种任务&#xff0c;学习prefix vector 启发于prompting&#xff0c;调整上下文内容让模型去输出自己想要的内容 核心就是找到一个上下文去引导模型解决NLP生成任务 传统情况下&#xff0c;我们为了得到想要的结果&#xff0c;会…