使用github提交Pull Request的完整流程

文章目录

  • 1.Fork仓库
  • 2. git clone 仓库在本地
  • 3.对项目进行修改开发
  • 4.上传项目到远程仓库
    • 操作补充
      • 1. `git add .`
      • 2. `git commit -m "提交信息"`
      • 3. `git pull`
      • 4. `git push`
      • 总结
      • 完整工作流程示例
  • 5.将更新的项目`pull Request`给原来的仓库主人

当多人进行项目的开发的时候,我们就得先Fork别人的仓库,在自己的github仓库进行开发,然后Pull Request给原来仓库的管理者

1.Fork仓库

在这里插入图片描述

在这里插入图片描述

可以显示你的仓库是从哪里fork来的

在这里插入图片描述

2. git clone 仓库在本地

在本地创建好文件夹,使用Git Bash here打开命令行

在这里插入图片描述

复制远程仓库的SSH

在这里插入图片描述
在这里插入图片描述

git clone成功之后,可以看到项目已经出现在本地,我们进入对应的项目的文件夹

cd 文件名

3.对项目进行修改开发

在这里插入图片描述

4.上传项目到远程仓库

首先使用git add .将整个项目从本地发送到暂存区,接着使用git commit -m将暂存区的项目推送到本地仓库,接着使用git pull拉取远程github的仓库到本地仓库和本地进行更新,处理完冲突之后,使用git push 将项目从本地仓库推送到远程的仓库

在这里插入图片描述

操作补充

git addgit commitgit pullgit push 是 Git 中常用的命令,用于将代码在不同位置之间传输。以下是它们的详细解释:


1. git add .

  • 作用:将工作目录中的更改(新建、修改、删除的文件)添加到暂存区(Staging Area)。
  • 从哪里发送到哪里
    • 工作目录(你本地正在编辑的文件)发送到暂存区
  • 示例
    git add .
    
    这会将当前目录下的所有更改添加到暂存区。

2. git commit -m "提交信息"

  • 作用:将暂存区中的更改保存为一个新的提交(Commit),并附上提交信息。
  • 从哪里发送到哪里
    • 暂存区发送到本地仓库(Local Repository)。
  • 示例
    git commit -m "修复了登录功能的 Bug"
    
    这会将暂存区的更改保存为一个提交,并记录提交信息。

3. git pull

  • 作用:从远程仓库(Remote Repository)拉取最新的更改,并合并到当前分支。
  • 从哪里发送到哪里
    • 远程仓库(例如 GitHub、GitLab)发送到本地仓库工作目录
  • 详细过程
    • git pull 实际上是两个操作的组合:
      1. git fetch:从远程仓库下载最新的更改。
      2. git merge:将下载的更改合并到当前分支。
  • 示例
    git pull origin main
    
    这会将远程仓库 originmain 分支的最新更改拉取并合并到本地。

4. git push

  • 作用:将本地仓库中的提交推送到远程仓库。
  • 从哪里发送到哪里
    • 本地仓库发送到远程仓库
  • 示例
    git push origin main
    
    这会将本地的 main 分支的提交推送到远程仓库 origin

总结

命令作用从哪里发送到哪里
git add .将工作目录的更改添加到暂存区工作目录 → 暂存区
git commit -m "消息"将暂存区的更改保存为提交暂存区 → 本地仓库
git pull从远程仓库拉取最新更改并合并远程仓库 → 本地仓库和工作目录
git push将本地仓库的提交推送到远程仓库本地仓库 → 远程仓库

完整工作流程示例

  1. 在工作目录中修改文件。
  2. 将更改添加到暂存区:
    git add .
    
  3. 将更改保存为提交:
    git commit -m "添加了新功能"
    
  4. 从远程仓库拉取最新更改(避免冲突):
    git pull origin main
    
  5. 将本地提交推送到远程仓库:
    git push origin main
    

通过以上命令,你可以将代码从本地推送到远程仓库,或者从远程仓库拉取最新的更改,实现代码的同步和协作开发。

5.将更新的项目pull Request给原来的仓库主人

这里会有两个按键,其中这个Contibute是用于Pull Request请求的,这个Sync Fork用于拉取原来的仓库的更新的

在这里插入图片描述

我们选择Contribute进行请求

在这里插入图片描述

我们可以补充我们修改的相关内容解释

在这里插入图片描述

提交成功之后,会显示如下,接着就是到了原来仓库的主人审核的环节了

在这里插入图片描述

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

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

相关文章

浅谈Unity中Canvas的三种渲染模式

Overview UGUI通过 Canvas 组件渲染和管理UI元素。Canvas 是 UI 元素的容器,它决定了 UI 元素的渲染方式以及它们在屏幕上的显示效果。Canvas 有三种主要的渲染模式,每种模式有不同的用途和特点。本文将介绍这三种渲染模式 1. Screen Space - Overlay 模…

Kafak 单例生产者实现-C#操作

前面写了一篇入门操作的文章,因为工作需要,简单修改了下如何实现单例生产者。 Kafka入门-C#操作_c# kafka-CSDN博客文章浏览阅读1.6k次,点赞20次,收藏9次。2).报错:“kafka.zookeeper.ZooKeeperClientTimeoutException: Timed out waiting for connection while in state…

第五天 Labview数据记录(5.1 INI配置文件读写)

5.1 INI配置文件读写 INI配置文件是一种简单的文本文件,通常用于存储软件的配置信息。它具有以下作用: 存储软件配置参数方便软件的维护和更新提高软件的灵活性和可扩展性便于用户修改和共享配置 5.1.1 前面板 1)新建项目SaveData_Exampl…

自动化01

测试用例的万能公式:功能测试界面测试性能测试易用性测试安全性测试兼容性测试 自动化的主要目的就是用来进行回归测试 新产品--第一个版本 (具备丰富的功能),将产品的整体进行测试,人工创造一个自动化测试用例,在n个版本的时候…

ElasticSearch(十一)— Elasticsearch中的SQL语句

一、总概 Elasticsearch 在 Basic 授权中支持以 SQL 语句的形式检索文档,SQL 语句在执行时会被翻译为 DSL 执行。从语法的角度来看,Elastisearch 中的 SQL 语句与RDBMS 中的 SQL 语句基本一致, 所以对于有数据库编程基础的人来说大大降低了使…

详解Redis的Zset类型及相关命令

目录 Zset简介 ZADD ZCARD ZCOUNT ZRANGE ZREVRANGE ZRANGEBYSCORE ZPOPMAX BZPOPMAX ZPOPMIN BZPOPMIN ZRANK ZREVRANK ZSCORE ZREM ZREMRANGEBYRANK ZREMRANGEBYSCORE ZINCRBY ZINTERSTORE 内部编码 应用场景 Zset简介 有序集合相对于字符串、列表、哈希…

【技术洞察】2024科技绘卷:浪潮、突破、未来

涌动与突破 2024年,科技的浪潮汹涌澎湃,人工智能、量子计算、脑机接口等前沿技术如同璀璨星辰,方便了大家的日常生活,也照亮了人类未来的道路。这一年,科技的突破与创新不断刷新着人们对未来的想象。那么回顾2024年的科…

缓存商品、购物车(day07)

缓存菜品 问题说明 问题说明:用户端小程序展示的菜品数据都是通过查询数据库获得,如果用户端访问量比较大,数据库访问压力随之增大。 结果: 系统响应慢、用户体验差 实现思路 通过Redis来缓存菜品数据,减少数据库查询…

09_异步加载_单例模式_常量类配置_不可销毁

1.首先在 资源加载服务层ResSvc.cs中添加 自定义异步加载函数 using UnityEngine; using UnityEngine.SceneManagement; //异步加载 命名空间 //功能 : 资源加载服务 public class ResSvc : MonoBehaviour{public void InitSvc(){Debug.Log("Init ResSvc...");}//自定…

【Redis】事务

前言: 对比MySQL事务:【MySQL篇】事务的认识以及四大特性-CSDN博客 弱化的原子性: redis 没有 "回滚机制". 只能做到这些操作 "批量执行". 不能做到 "一个失败就恢复到初始状态". 不保证一致性: 不涉及 "约束". 也没有…

深度学习|表示学习|卷积神经网络|通道 channel 是什么?|05

如是我闻: 在卷积神经网络(CNN)中,channel(通道) 是指输入或输出数据的深度维度,通常用来表示输入或输出的特征类型。 通道的含义 输入通道(Input Channels):…

K8S 集群搭建和访问 Kubernetes 仪表板(Dashboard)

一、环境准备 服务器要求: 最小硬件配置:2核CPU、4G内存、30G硬盘。 服务器可以访问外网。 软件环境: 操作系统:Anolis OS 7.9 Docker:19.03.9版本 Kubernetes:v1.18.0版本 内核版本:5.4.203-…

网络(三) 协议

目录 1. IP协议; 2. 以太网协议; 3. DNS协议, ICMP协议, NAT技术. 1. IP协议: 1.1 介绍: 网际互连协议, 网络层是进行数据真正传输的一层, 进行数据从一个主机传输到另一个主机. 网络层可以将数据主机进行传送, 那么传输层保证数据可靠性, 一起就是TCP/IP协议. 路径选择: 确…

用Python绘制一只懒羊羊

目录 一、准备工作 二、Turtle库简介 三、绘制懒羊羊的步骤 1. 导入Turtle库并设置画布 2. 绘制头部 3. 绘制眼睛 4. 绘制嘴巴 5. 绘制身体 6. 绘制四肢 7. 完成绘制 五、运行代码与结果展示 六、总结 在这个趣味盎然的技术实践中,我们将使用Python和Turtle图形…

【C语言】预处理详解

他们想要逃避工作的压迫,却又被功绩社会深植的价值观绑架。 预定义符号 1. C语言设置了⼀些预定义符号,可以直接使用,预定义符号也是在预处理期间处理的。 1 __FILE__ //进⾏编译的源⽂件 2 __LINE__ //⽂件当前的⾏号 3 __DATE__ //⽂件被编…

探秘差分数组:算法星河中闪耀的区间掌控之星

本篇鸡汤:夜深人静,正是你追梦的时刻。熬过这段孤独,未来会因你而闪亮! 探索新知,点亮智慧!关注我,一起成长,点赞收藏不迷路! 欢迎拜访&…

Ubuntu环境 nginx 源码 编译安装

ubuntu 终端 使用 wget 下载源码 sudo wget http://nginx.org/download/nginx-1.24.0.tar.gz解压刚下载的源码压缩包 nginx-1.24.0.tar.gz sudo tar -zxvf nginx-1.24.0.tar.gz 解压完成 产生 nginx-1.24.0 目录 进入该目录 cd ./nginx-1.24.0 目录下有一个可执行文件 con…

linux如何修改密码,要在CentOS 7系统中修改密码

要在CentOS 7系统中修改密码,你可以按照以下步骤操作: 步骤 1: 登录到系统 在登录提示符 localhost login: 后输入你的用户名。输入密码并按回车键。 步骤 2: 修改密码 登录后,使用 passwd 命令来修改密码: passwd 系统会提…

C# volatile 使用详解

总目录 前言 在多线程编程中,确保线程之间的正确同步和可见性是一个关键挑战。C# 提供了多种机制来处理这些挑战,其中之一就是 volatile 关键字。它用于指示编译器和运行时环境不要对特定变量进行某些优化,以保证该变量的读写操作是线程安全…

[Unity 热更方案] 使用Addressable进行打包管理, 使用AssetBundle进行包的加载管理.70%跟练

在正常的开发过程中我们经常遇到一些关于热更的方案,有一些已有的方案供我们选择,但是实机情况往往不尽如人意,各有优缺点. 现在我们同样有一个热更的需求,但是要求打包简单,加载过程可查,防止出现一些资源和流程的问题. 下面介绍我在项目中使用的方案. 打包方面使用Addressabl…