当前位置: 首页 > news >正文

GitHub简介与安装使用入门教程

image-20240723083340777

1、Git与GitHub的简介

Git是目前世界上最先进的分布式控制系统,它允许开发者跟踪和管理源代码的改动历史记录等,可以将你的代码恢复到某一个版本,支持多人协作开发。它的核心功能包括版本控制、分支管理、合并和冲突解决等,其操作是基于命令行,可以在本地计算机上离线工作。

GitHub是一个基于Git的在线托管平台/仓库,它提供了托管服务和一系列协作工作,还提供了用户界面等,同时具有一些社交属性,例如关注其他用户、star项目等。

总之,Git是一个系统和工具,而GitHub是使用Git的平台。很多时候开发者在本地使用Git进行版本控制,在Github上进行共享和协作。

此外,感觉如果前期水平低的时候,根本用不到Git,很多时候很多人只是需要从GitHub上下载资源或者寻求问题答案。

2、Git的安装与简单入门

Git的安装比较简单,直接在官网(https://git-scm.com/downloads)下载不同平台的安装包,使用默认的设置等进行安装即可。

image-20240723084123277

Git的一些操作在网上都有比较完整的教程,包括Git的思维导图或者常用命令表等。以下思维导图来自GitHub用户kur-archive,常用命令表来自W3Cschool网站,还包括一些其他参考博客入门篇 - 《猴子都能懂的GIT入门》 - 书栈网 · BookStack、https://nulab.com/zh-cn/learn/software-development/git-tutorial/,以及Git的官方文档等。

思维导图

常用命令速查表

(1)配置用户信息

打开CMD,输入:git config --list,查看当前信息。

因为我之前使用过GitHub,所以我的用户名和邮箱是有信息的。

image-20240723090458528

但是如果是之前没有安装使用过GitHub或者Gitee,需要先配置用户信息。使用如下命令:

git config --global user.name xxx
git config --global user.email xxx.com

(2)新建本地仓库

使用Git仓库来管理自己的项目。在要设置为仓库的文件夹中,右键–在终端中打开,输入代码:git init,该命令会在当前文件夹创建一个.git的隐藏目录。

(3)跟踪指定文件并提交更新

使用代码:git add 文件名将指定文件从工作区(workspace)保存到暂存区(index/stage);使用代码git commit -m "引号中可以添加提交说明" 将暂存区的更改提交到本地仓库(repository)中。

(4)查看历史版本

使用代码:git log查看更改的历史信息。

3、GitHub申请与简单入门

GitHub的申请首先需要解决的问题是GitHub网站的访问。临时的学习可以使用例如一些Web插件解决,但是长久的使用还是只能通过氪金解决。当你解决GitHub官方访问这一问题后,其他都不再是问题。

GitHub的申请在网络上有很多教程,这里为大家推荐一下官方文档(https://docs.github.com/zh/get-started/start-your-journey/creating-an-account-on-github),当然大家也可以申请GitHub学生包。

关于GitHub的使用,我们也是推荐官方的帮助文档:https://docs.github.com/zh/get-started/start-your-journey,但是帮助文档中只有部分内容是有中文的。下面介绍几个常用的功能。

(1)资源下载

从网页端下载资源很简单,搜索到自己需要的内容之后,最常用的就是直接下载压缩文件,当然也可以尝试在桌面端打开。

image-20240723194719549

通过桌面端GitHub打开会通过克隆仓库的方式,可以修改默认的克隆地址等。

image-20240723194829270

当然,如果你对这个项目感兴趣,想关注他的更新等,也可以通过Star设置星标,进行项目的关注。或者通过follow某个开发人员,来实现持续的关注。

(2)建库

建库方式比较简单,打开你的主页,点击New。

image-20240723195447473

接下来输入项目名称、项目的描述、设置项目为私人代码库或公共代码库、添加readme文件等。

image-20240723195654608

也可以使用客户端克隆库到本地、创建辅助库、在云盘新建库等。

image-20240723200258423

后续等我们学了新的东西后,可能还会上传代码。目前还没达到要上传代码的水平,就先不学习了。

4、共享代码

4.1 共享文件夹

共享文件夹过程参考:https://cloud.tencent.com/developer/article/2398974。如果需要将自己的项目文件夹上传到GitHub进行共享,首先在GitHub建立需要上传的仓库,并clone仓库地址。如果说仅仅上传单个文件,可以使用Add files进行拖动上传,不一定需要使用代码,但是上传文件夹无法直接拖动上传。

在需要上传的文件夹中右键,选择Open Git Bash here。

输入代码:git init,初始化本地仓库,会在本地仓库中出现.git文件夹,使用记事本打开.git文件夹中config文件。

手动添加GitHub用户名和邮箱信息。

之后使用代码:git branch -m master main,将默认的主分支名称从master改为main。

接下来使用代码:git remote add origin clone的远程仓库地址连接到远程仓库。

在添加或更新之前,确保本地仓库是最新的,之后执行代码:git pull origin main,同步远程仓库的信息,获取最新的更改。

同时,网上教程还提到了如果出现不相关历史的错误提示,可以使用如下代码:git pull origin main --allow-unrelated-histories。如果需要提交,使用代码:git add .,将文件添加到暂存区;之后使用 git commit -m "你的提交信息"进行提交并添加提交信息,我这里上传了105个文件。

此外,网上教程介绍了可以使用SSH协议,而不是HTTPS。使用SSH需要在 GitHub 上添加 SSH 公钥,然后将远程仓库 URL 更改为 SSH 格式。

最后一步是上传项目,使用代码:git push origin main

运行代码后打开自己的GitHub仓库,就可以看到上传的项目文件夹了。

此外,Gitee总体步骤大概接近,可以借鉴教程:https://blog.csdn.net/qqliuzhitong/article/details/119319592,其也支持直接从GitHub导入仓库。

大概接近,可以借鉴教程:https://blog.csdn.net/qqliuzhitong/article/details/119319592,其也支持直接从GitHub导入仓库。

相关文章:

GitHub简介与安装使用入门教程

1、Git与GitHub的简介 Git是目前世界上最先进的分布式控制系统,它允许开发者跟踪和管理源代码的改动历史记录等,可以将你的代码恢复到某一个版本,支持多人协作开发。它的核心功能包括版本控制、分支管理、合并和冲突解决等,其操作…...

HTML(五)列表详解

在HTML中&#xff0c;列表可以分为两种&#xff0c;一种为有序列表。另一种为无序列表 今天就来详细讲解一下这两种列表如何实现&#xff0c;效果如何 1.有序列表 有序列表的标准格式如下&#xff1a; <ol><li>列表项一</li><li>列表项二</li>…...

SparkSQL介绍及使用

SparkSQL介绍及使用 一、什么是SparkSQL&#xff08;了解&#xff09; spark开发时可以使用rdd进行开发&#xff0c;spark还提供saprksql工具&#xff0c;将数据转为结构化数据进行操作 1-1 介绍 官网&#xff1a;https://spark.apache.org/sql/ Spark SQL是 Apache Spark 用于…...

【聚星文社】3.2版一键推文工具更新啦

【聚星文社】3.2版一键推文工具更新啦。调试了好几个通宵就是为了效果和质量。 旧版尽早更新新版&#xff0c;从此告别手搓&#xff01; 工具入口https://iimenvrieak.feishu.cn/docx/ZhRNdEWT6oGdCwxdhOPcdds7nof...

C++基础补充(03)C++20 的 std::format 函数

文章目录 1. 使用C20 std::format2. 基本用法3. 格式说明 1. 使用C20 std::format 需要将VisualStudio默认的标准修改为C20 菜单“项目”-“项目属性”&#xff0c;打开如下对话框 代码中加入头文件 2. 基本用法 通过占位符{}制定格式化的位置&#xff0c;后面传入变量 #…...

[论文笔记]DAPR: A Benchmark on Document-Aware Passage Retrieval

引言 今天带来论文DAPR: A Benchmark on Document-Aware Passage Retrieval的笔记。 本文提出了一个基准&#xff1a;文档感知段落检索(Document-Aware Passage Retrieval,DAPR)以及介绍了一些上下文段落表示的方法。 为了简单&#xff0c;下文中以翻译的口吻记录&#xff0c…...

Spring Boot知识管理:智能搜索与分析

3系统分析 3.1可行性分析 通过对本知识管理系统实行的目的初步调查和分析&#xff0c;提出可行性方案并对其一一进行论证。我们在这里主要从技术可行性、经济可行性、操作可行性等方面进行分析。 3.1.1技术可行性 本知识管理系统采用JAVA作为开发语言&#xff0c;Spring Boot框…...

操作系统(2) (进程调度/进程调度器类型/三种进程调度/调度算法)

目录 1. 介绍进程调度&#xff08;Introduction to Process Scheduling&#xff09; 2. 优先级调度&#xff08;Priority Scheduling&#xff09; 3. CPU 利用率&#xff08;CPU Utilization&#xff09; 4. 吞吐量&#xff08;Throughput&#xff09; 5. 周转时间&#xf…...

鸿蒙--知乎评论

这里我们将采用组件化的思想进行开发 在开发中默认展示的是首页也就是 pages/Index.ets页面 这里存放的是所有页面的配置文件,类似与uniapp中的pages.json 如果我们此时要更改默认显示Zh...

2024 - 两台CentOS服务器上的1000个Docker容器(每台500个)之间实现UDP通信(C语言版本)

两台CentOS服务器上的1000个Docker容器&#xff08;每台500个&#xff09;之间实现UDP通信(C语言版本) 给女朋友对象写得&#xff0c;她不会&#xff0c;我就写了一个 为了帮助您在两台CentOS服务器上的1000个Docker容器&#xff08;每台500个&#xff09;之间实现UDP通信&…...

小程序该如何上架

小程序的上架流程通常包括准备工作、代码审核、人工审核以及上线发布等关键步骤。以下是一个详细的小程序上架指南&#xff1a; 一、准备工作 注册开发者账号&#xff1a; 在微信小程序平台或支付宝开放平台等相应的小程序发布平台上注册开发者账号。 开发小程序&#xff1a; …...

XMOJ3065 旅游线路

10分钟没啥思路就去看题解了&#xff0c;结果发现很蠢。 题目大意 有一条河&#xff0c;河的东侧和西侧分别有 n , m n,m n,m 个景点&#xff0c;每个景点有个权值。有 k k k 条船&#xff0c;每条船连接东侧和西侧的一个景点。定义一个旅游线路是通过船连接起来的景点序列…...

量化之一:均值回归策略

文章目录 均值回归策略理论基础数学公式 关键指标简单移动平均线&#xff08;SMA&#xff09;标准差Z-Score 交易信号实际应用优缺点分析优点缺点 结论 实践backtrader参数&#xff1a;正常情况&#xff1a;异常情况&#xff1a; 均值回归策略 均值回归&#xff08;Mean Rever…...

NVIDIA Bluefield DPU上的启动流程4个阶段分别是什么?作用是什么?

文章目录 Bluefield上的硬件介绍启动流程启动流程:eMMC中的两个存储分区:ATF介绍ATF启动的四个阶段:四个主要步骤:各个阶段依赖的启动文件一次烧录fw失败后的信息看启动流程综述Bluefield上的硬件介绍 本文以Bluefield2为例,可以看到RSHIM实际上是Boot相关的集合。也能看…...

最优美公式-欧拉公式,轻松理解版

Alan Becker创作的火柴人大战数学的打斗视频&#xff0c;风靡一时&#xff0c;并在B站荣耀斩获了“金知奖”。下面是网友对此视频的部分评价截图。 视频原址&#xff1a;火柴人 vs 数学&#xff0c;后续又一口气看完了“火柴人vs 几何”与“火柴人vs 物理”&#xff0c;通过火柴…...

【力扣 | SQL题 | 每日3题】力扣1107,1112, 1077

今天三道mid题都可以用窗口函数轻松秒杀。 1. 力扣1107&#xff1a;每日新用户统计 1.1 题目&#xff1a; Traffic 表&#xff1a; ------------------------ | Column Name | Type | ------------------------ | user_id | int | | activity | enum …...

计算机网络(十一) —— 数据链路层

目录 一&#xff0c;关于数据链路层 二&#xff0c;以太网协议 2.1 局域网 2.2 Mac地址 2.3 Mac帧报头 2.4 MTU 三&#xff0c;ARP协议 3.1 ARP是什么 3.2 ARP原理 3.3 ARP报头 3.4 模拟ARP过程 3.5 ARP周边问题 四&#xff0c;NAT技术 4.1 NAT技术背景 4.2 NAT转…...

使用PyTorch从0实现Fashion-MNIST数据集分类

完整代码&#xff1a; from d2l import torch as d2l import torch from torchvision import transforms from torchvision import datasets from torch.utils.data import DataLoader import matplotlib.pyplot as plt from IPython import displaydef get_fashion_mnist_la…...

Java数组的值拷贝和地址拷贝

在Java中&#xff0c;数组的值拷贝和地址拷贝是两种不同的操作。 值拷贝是指将一个数组的值复制到另一个新的数组中。这意味着新数组和原数组独立存在&#xff0c;修改其中一个数组不会影响另一个数组。Java中的数组是对象&#xff0c;所以通过值拷贝操作实际上是复制了数组对…...

类与对象 中(剩余部分) 以及 日历

运算符重载 • 当运算符被⽤于类类型的对象时&#xff0c;C语⾔允许我们通过运算符重载的形式指定新的含义。C规定类类型对象使⽤运算符时&#xff0c;必须转换成调⽤对应运算符重载&#xff0c;若没有对应的运算符重载&#xff0c;则会编译报错。 • 运算符重载是具有特名字的…...

多云管理“拦路虎”:深入解析网络互联、身份同步与成本可视化的技术复杂度​

一、引言&#xff1a;多云环境的技术复杂性本质​​ 企业采用多云策略已从技术选型升维至生存刚需。当业务系统分散部署在多个云平台时&#xff0c;​​基础设施的技术债呈现指数级积累​​。网络连接、身份认证、成本管理这三大核心挑战相互嵌套&#xff1a;跨云网络构建数据…...

[ICLR 2022]How Much Can CLIP Benefit Vision-and-Language Tasks?

论文网址&#xff1a;pdf 英文是纯手打的&#xff01;论文原文的summarizing and paraphrasing。可能会出现难以避免的拼写错误和语法错误&#xff0c;若有发现欢迎评论指正&#xff01;文章偏向于笔记&#xff0c;谨慎食用 目录 1. 心得 2. 论文逐段精读 2.1. Abstract 2…...

Python实现prophet 理论及参数优化

文章目录 Prophet理论及模型参数介绍Python代码完整实现prophet 添加外部数据进行模型优化 之前初步学习prophet的时候&#xff0c;写过一篇简单实现&#xff0c;后期随着对该模型的深入研究&#xff0c;本次记录涉及到prophet 的公式以及参数调优&#xff0c;从公式可以更直观…...

CocosCreator 之 JavaScript/TypeScript和Java的相互交互

引擎版本&#xff1a; 3.8.1 语言&#xff1a; JavaScript/TypeScript、C、Java 环境&#xff1a;Window 参考&#xff1a;Java原生反射机制 您好&#xff0c;我是鹤九日&#xff01; 回顾 在上篇文章中&#xff1a;CocosCreator Android项目接入UnityAds 广告SDK。 我们简单讲…...

并发编程 - go版

1.并发编程基础概念 进程和线程 A. 进程是程序在操作系统中的一次执行过程&#xff0c;系统进行资源分配和调度的一个独立单位。B. 线程是进程的一个执行实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。C.一个进程可以创建和撤销多个线程;同一个进程中…...

android13 app的触摸问题定位分析流程

一、知识点 一般来说,触摸问题都是app层面出问题,我们可以在ViewRootImpl.java添加log的方式定位;如果是touchableRegion的计算问题,就会相对比较麻烦了,需要通过adb shell dumpsys input > input.log指令,且通过打印堆栈的方式,逐步定位问题,并找到修改方案。 问题…...

Caliper 配置文件解析:fisco-bcos.json

config.yaml 文件 config.yaml 是 Caliper 的主配置文件,通常包含以下内容: test:name: fisco-bcos-test # 测试名称description: Performance test of FISCO-BCOS # 测试描述workers:type: local # 工作进程类型number: 5 # 工作进程数量monitor:type: - docker- pro…...

人工智能 - 在Dify、Coze、n8n、FastGPT和RAGFlow之间做出技术选型

在Dify、Coze、n8n、FastGPT和RAGFlow之间做出技术选型。这些平台各有侧重&#xff0c;适用场景差异显著。下面我将从核心功能定位、典型应用场景、真实体验痛点、选型决策关键点进行拆解&#xff0c;并提供具体场景下的推荐方案。 一、核心功能定位速览 平台核心定位技术栈亮…...

在鸿蒙HarmonyOS 5中使用DevEco Studio实现指南针功能

指南针功能是许多位置服务应用的基础功能之一。下面我将详细介绍如何在HarmonyOS 5中使用DevEco Studio实现指南针功能。 1. 开发环境准备 确保已安装DevEco Studio 3.1或更高版本确保项目使用的是HarmonyOS 5.0 SDK在项目的module.json5中配置必要的权限 2. 权限配置 在mo…...

算法刷题-回溯

今天给大家分享的还是一道关于dfs回溯的问题&#xff0c;对于这类问题大家还是要多刷和总结&#xff0c;总体难度还是偏大。 对于回溯问题有几个关键点&#xff1a; 1.首先对于这类回溯可以节点可以随机选择的问题&#xff0c;要做mian函数中循环调用dfs&#xff08;i&#x…...