python特别篇—github基本操作手册

一、开始使用

1.1 “Hello world”

1.1.1 github介绍

      GitHub是一个基于Git版本控制系统的代码托管平台。它提供了一个在线的代码仓库,使开发者可以将自己的代码存储在云端,并与其他开发者进行协作。GitHub不仅仅是一个代码托管平台,还提供了许多其他功能,如问题跟踪、项目管理、代码审查、持续集成等。开发者可以通过GitHub分享自己的开源项目,也可以在上面找到其他人的开源项目并参与贡献。

GitHub入门需要了解的操作:

  • 创建和使用存储库
  • 启动和管理新分支
  • 对文件进行更改并将其作为提交推送到 GitHub
  • 打开并合并拉取请求

1.1.2 创建存储库

        存储库通常用于组织单个项目。存储库可以包含文件夹和文件、图像、视频、电子表格和数据集 - 您的项目需要的任何内容。通常,存储库包括一个自述文件,一个包含有关项目信息的文件。

点击主页上的“+”号:

  1. 选择New repository表示创建一个新的仓库。
  2. 选择“Import repository”表示引入一个外部版本控制系统中的代码库完整地迁移到GitHub上,并保留其完整的历史记录。

1.1.3 创建分支

        GitHub的分支是用于在项目中独立开发和管理不同功能或修复的副本。它允许团队成员在不影响主分支(通常是master分支)的情况下并行工作,并在完成后将更改合并回主分支。

以下是关于GitHub分支的一些重要概念和操作:

  1. 主分支(master分支):主分支是项目的默认分支,通常用于发布稳定的版本。在主分支上进行的更改会直接影响项目的稳定性。

  2. 创建分支:您可以通过在项目页面上点击 "Branch: master" 按钮并输入新分支的名称来创建一个新分支。这将创建一个基于主分支的副本,您可以在该分支上独立进行开发。

  3. 切换分支:您可以通过在项目页面上点击 "Branch: master" 按钮并选择要切换的分支来切换到不同的分支。这将切换您的工作目录以查看和编辑特定分支的文件。

  4. 合并分支:一旦您在分支上完成了更改,您可以将其合并回主分支或其他分支。您可以使用 "Pull Request" 功能创建一个请求,请求将您的更改合并到目标分支中。项目的其他成员可以审查您的更改并提供反馈。

  5. 解决冲突:当多个分支对同一文件进行了不同的更改时,会发生冲突。在合并分支时,如果存在冲突,您需要解决这些冲突才能成功合并。您可以手动编辑文件以解决冲突,或者使用合并工具来自动解决冲突。

  6. 删除分支:一旦分支的工作完成,您可以删除它。在分支页面上,点击 "Delete branch" 按钮即可删除分支。请注意,删除分支后,分支上的更改将无法恢复。

        分支是GitHub中重要的协作和版本控制工具,它使团队成员能够独立工作并将更改有序地合并到项目中。

操作方法:

  1. 打开要创建分支的项目页面。
  2. 点击页面右上角的 "Branch: master" 按钮,这将打开一个下拉菜单。
  3. 在下拉菜单中输入新分支的名称,并点击 "Create branch" 按钮。
  4. 这样就已经创建了一个新分支。可以在新分支上进行更改,而不会影响主分支。

1.2 Git工具

1.2.1 git介绍

Git是一个分布式版本控制系统,最初由Linus Torvalds开发,用于管理和追踪文件的变化。它可以记录文件的修改历史,并且可以轻松地在不同的分支之间切换。

Git的主要特点包括:

  1. 分布式:每个开发者都可以拥有自己的本地代码仓库,可以在本地进行开发和提交,而不需要依赖中央服务器。这样可以提高开发效率,并且即使服务器出现故障,代码也不会丢失。

  2. 高效性能:Git的设计目标是快速和高效。它使用了一种称为“快照”的方式来存储文件的变化,而不是每次都保存完整的文件副本。这样可以减少存储空间的占用,并且在处理大型项目时也可以提高速度。

  3. 强大的分支管理:Git具有强大的分支管理功能,可以轻松地创建、合并和删除分支。这使得团队成员可以并行开发不同的功能,而不会相互干扰。

  4. 完整的历史记录:Git会记录每次提交的详细信息,包括修改的文件、修改的内容以及提交者的信息。这样可以方便地追踪和回溯代码的变化,以及查找问题的根源。

  5. 支持多种协作方式:Git支持多种协作方式,包括基于SSH的远程仓库、基于HTTP协议的远程仓库以及通过电子邮件进行的协作。这使得开发者可以根据自己的需求选择适合的方式进行协作。

1.2.2 git使用

git工作流:

使用git的方式:

  1. 命令行
  2. GUI界面(可以直接在官网下载) 
  3. IDE插件(拓展)
命令行工具

(因为涉及到隐私信息,就没有界面的截图了)

Git命令行指令是我们操作git常用的方式,下面按照git的 

  1. 创建和初始化仓库:

    • git init:在当前目录下创建一个新的Git仓库。
  2. 设置和配置:

    • git config --global user.name "Your Name":设置全局用户名。
    • git config --global user.email "youremail@example.com":设置全局用户邮箱。
    • git config --global core.editor "editor":设置默认文本编辑器。
    • git config --global credential.helper store:设置全局存储密码。
    • git config --global alias.<alias-name> <git-command>:创建Git命令别名。
  3. 添加和提交文件:

    • git add <file>:将文件添加到暂存区。
    • git add .:将所有修改过的文件添加到暂存区。
    • git commit -m "Commit message":提交暂存区的文件到仓库。
  4. 分支管理:

    • git branch:列出所有分支。
    • git branch <branch-name>:创建新的分支。
    • git checkout <branch-name>:切换到指定分支。
    • git merge <branch-name>:将指定分支合并到当前分支。
    • git branch -d <branch-name>:删除指定分支。
  5. 远程仓库:

    • git remote add <remote-name> <remote-url>:添加远程仓库。
    • git remote -v:查看远程仓库列表。
    • git push <remote-name> <branch-name>:将本地分支推送到远程仓库。
    • git pull <remote-name> <branch-name>:从远程仓库拉取最新代码。
  6. 查看和比较:

    • git status:查看工作区、暂存区和仓库的状态。
    • git log:查看提交历史。
    • git diff:查看工作区和暂存区的差异。
    • git diff <commit1> <commit2>:比较两个提交之间的差异。
  7. 撤销和回退:

    • git restore <file>:撤销对文件的修改。
    • git reset <commit>:回退到指定的提交。
    • git revert <commit>:撤销指定的提交。
  8. 标签管理:

    • git tag:列出所有标签。
    • git tag <tag-name>:创建新的标签。
    • git tag -a <tag-name> -m "Tag message":创建带注释的标签。
    • git push --tags:将本地标签推送到远程仓库。
GUI工具

git提供了GUI可视化的界面用来管理项目。

1.创建仓库

 按下windows键,在搜索栏输入Git Gui,并打开对应工具

2、创建本地仓库(输入项目文件夹地址,在该地址上创建仓库)

3、进入仓库管理界面

 说明:

工作区:列出有改动的文件(你在该地址中创建的所有项目都会在上面显示)
暂存区:存放将要提交到版本库的文件,工作区中修改完成的文件应将放入暂存区
差异区:在工作区/暂存区选择文件会显示出改动前后的具体信息
提交的说明:提交时写入改动的相关说明

Rescan:扫描出改动的文件,显示在工作区。GUI并不会实时更新对仓库的修改,需要点击Rescan按钮重新扫描。
Stage Changed:将工作区中所有文件放入暂存区。
Sign off:在提交的说明后面附加上当前git账号的信息。多人协作时方便看到提交的编辑者。
Commit:将暂存区的文件提交到版本库。
Push:推送到远程版本库。

我个人还是不太喜欢git GUI工具,一是不够简洁,二是不支持utf8格式的数据(中文显示为乱码)

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

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

相关文章

【MultiOTP】在Linux上使用MultiOTP进行SSH登录

在前面的文章中【FreeRADIUS】使用FreeRADIUS进行SSH身份验证已经了解过如何通过Radius去来实现SSH和SUDO的登录&#xff0c;在接下来的文章中只是将密码从【LDAP PASSWORD Googlt OTP】改成了【MultiOTP】生成的passcode&#xff0c;不在需要密码&#xff0c;只需要OTP去登录…

MinIO (二) .net core中实现上传下载

这篇文章里&#xff0c;我们介绍在.net core webapi项目中操作MinIO。 首先要创建一个桶&#xff0c;命名为demo 英文文档看不太顺畅&#xff0c;在网上找了一个api中文文档&#xff0c;可供参考 .NET Client API参考文档 - MinIO 帮助文档 - 开发文档 - 文江博客 创建桶 点…

Java 操作 Excel:生成数据、设置单元格样式、设置数据有效性(hutool)

必读信息 该篇文章&#xff0c;主要通过 Java 代码对 Excel 文件的常用操作&#xff0c;包括&#xff1a;生成表格、修改单元格样式、设置数据有效性。 该篇文章&#xff0c;在官网文献下增加个人的看法和理解&#xff0c;如文中有出现不符、错误或需要补充的地方&#xff0c…

计算机算法分析与设计(13)---贪心算法(多机调度问题)

文章目录 一、问题概述1.1 思路分析1.2 实例分析 二、代码编写 一、问题概述 1.1 思路分析 1. 设有 n n n 个独立的作业 1 , 2 , … , n {1, 2, …, n} 1,2,…,n&#xff0c;由 m m m 台相同的机器 M 1 , M 2 , … , M m {M_1, M_2, …, M_m} M1​,M2​,…,Mm​ 进行加工处…

一文带你GO语言入门

什么是go语言? Go语言(又称Golang)是Google开发的一种静态强类型、编译型、并发型,并具有垃圾回收功能的编程语言。Go语言的主要特点包括:- 简洁和简单 - 语法简单明快,易于学习和使用 特点 高效 编译速度快,执行效率高 并发支持 原生支持并发,利用goroutine实现高效的并发…

AP5101C 高压线性恒流 LED电源驱动IC 3D打印机显示灯驱动器

1&#xff0c;产品描述 AP5101C 是一款高压线性 LED 恒流芯片 &#xff0c; 简单 、 内置功率管 &#xff0c; 适用于6- 100V 输入的高精度降压 LED 恒流驱动芯片。电流2.0A。AP5101C 可实现内置MOS 做 2.0A,外置 MOS 可做 3.0A 的。AP5101C 内置温度保护功能 &#xff0c;温度…

【C++】多态 -- 详解

⚪前言 声明一下&#xff0c;下面的代码和解释都是在 VS2019 下的 X86 程序中进行的&#xff0c;涉及的指针都是 4 bytes。如果要其他平台下&#xff0c;部分代码需要改动。比如&#xff1a;如果是 X64 程序&#xff0c;则需要考虑指针是 8 bytes 问题等等。其它编译环境下&…

汽车屏类产品(二):360全景环视(SVC)、多分割显示、行车记录

前言 随着新能源汽车的快速发展,带动了车载器件的大发展,大的比如域控,小的创新更是不断涌现。而车载显示屏可以说是一大类产品,产品形态也是愈发多样化,比如:仪表cluster、中控IVI、副驾屏、行车记录仪、流媒体后视镜、透明A柱屏、方向盘屏(替代方向盘按键)、门饰板显…

15 | JPA 对 Web MVC 开发者做了哪些支持

我们使用 Spring Data JPA 的时候&#xff0c;一般都会用到 Spring MVC&#xff0c;Spring Data 对 Spring MVC 做了很好的支持&#xff0c;体现在以下几个方面&#xff1a; 支持在 Controller 层直接返回实体&#xff0c;而不使用其显式的调用方法&#xff1b;对 MVC 层支持标…

vant_ CountDown倒计时

语法可以直接在官网查看 需求 后端返回的数据格式如下 [{"id": 1,"btn_text": "1","second": 0},{"id": 2,"btn_text": "1","second": 0}... ]之前约定second最多30s&#xff0c; 因此只需…

一文学会使用WebRTC API

WebRTC&#xff08;Web Real-Time Communication&#xff09;是一项开放标准和技术集合&#xff0c;由 W3C 和 IETF 等组织共同推动和维护&#xff0c;旨在通过Web浏览器实现实时通信和媒体流传输。WebRTC于2011年6月1日开源并在Google、Mozilla、Opera支持下被纳入万维网联盟的…

ELK日志分析系统的详细介绍与部署

文章目录 1. ELK的概述1.1 简介1.2 使用ELK的理由1.3 ELK的主要组件1.3.1 Elasticsearch1.3.2 Kibana1.3.3 Logstash1.3.3.1 简介1.3.3.2 Logstash常用相关命令选项 1.3.3.3 Logstash 的输入和输出流1.3.4 Logstash的相关配置文件 1.3.4 Filebeat1.3.4.1 简介1.3.4.2 filebeat …

华为Atlas 200I DK A2开发者套件--基础使用配置

文章目录 前言一、快速开始二、通过路由器联网三、USB相机总结 前言 Atlas 200I DK A2基础使用配置方法。准备好键鼠、显示器、网线、USB拓展器。 一、快速开始 下载最新官方Windows版本昇腾开发者套件一键制卡工具&#xff1a; https://ascend-repo.obs.cn-east-2.myhuaweic…

VBA技术资料MF71:查找所有空格并替换为固定字符

我给VBA的定义&#xff1a;VBA是个人小型自动化处理的有效工具。利用好了&#xff0c;可以大大提高自己的工作效率&#xff0c;而且可以提高数据的准确度。我的教程一共九套&#xff0c;分为初级、中级、高级三大部分。是对VBA的系统讲解&#xff0c;从简单的入门&#xff0c;到…

基于鹰栖息优化的BP神经网络(分类应用) - 附代码

基于鹰栖息优化的BP神经网络&#xff08;分类应用&#xff09; - 附代码 文章目录 基于鹰栖息优化的BP神经网络&#xff08;分类应用&#xff09; - 附代码1.鸢尾花iris数据介绍2.数据集整理3.鹰栖息优化BP神经网络3.1 BP神经网络参数设置3.2 鹰栖息算法应用 4.测试结果&#x…

Linux高性能服务器编程 学习笔记 第十六章 服务器调制、调试和测试

Linux平台的一个优秀特性是内核微调&#xff0c;即我们可以通过修改文件的方式来调整内核参数。 服务器开发过程中&#xff0c;可能会碰到意想不到的错误&#xff0c;一种调试方法是用tcpdump抓包&#xff0c;但这种方法主要用于分析程序的输入和输出&#xff0c;对于服务器的…

23基于MATLAB的小波降噪,默认阈值消噪,强制消噪,给定软阈值消噪方法,数据直接替换后就可以跑。

基于MATLAB的小波降噪&#xff0c;默认阈值消噪&#xff0c;强制消噪&#xff0c;给定软阈值消噪方法&#xff0c;数据直接替换后就可以跑。 https://www.xiaohongshu.com/explore/652d57c600000

10.Linear Map transformation rules

线性映射 从一个基底到另一个基底 所遵循的转换规则。 假设&#xff1a; 由一个矩阵给出的线性映射在这&#xff0c;并且是在基底e上表示&#xff0c; 该线性映射将e1变成0.5个e1&#xff0c;将e2变成2个e2&#xff1b; 假设有个向量V&#xff0c;其分量是【1&#xff0c;1…

从零开始学习秒杀项目

构思了很多种讲述这个简易版的秒杀项目的思路&#xff0c;比如按照功能分类&#xff0c;按照项目亮点串起来讲述&#xff0c;总觉得不适合基础薄弱的同学来学习&#xff0c;所以本项目按照从搭建开始&#xff0c;过程中需要什么来学习什么。 技术栈 SpringBootmybatisPlus&am…

从零开始的stable diffusion

stable diffusion真的是横空出世&#xff0c;开启了AIGC的元年。不知你是否有和我一样的困惑&#xff0c;这AI工具好像并不是那么听话&#xff1f; 前言 我们该如何才能用好stable diffusion这个工具呢&#xff1f;AI究竟在stable diffusion中承担了什么样的角色&#xff1f;如…