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

news2025/1/31 6:06:50

文章目录

  • 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.coloradmin.cn/o/2285184.html

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

相关文章

游戏与硬件深度协同,打造更精细的体验优化

高画质的游戏往往带来手机的发热和卡顿从而影响游戏体验。开发者希望能够获取到手机运行的实时状态,从而能够进行主动的负载调节,将手机发热时游戏体验影响降到最低;同时手机也可以通过游戏传入的关键场景如"正在下载资源"“团战中…

SpringCloud系列教程:微服务的未来(十七)监听Nacos配置变更、更新路由、实现动态路由

前言 在微服务架构中,API 网关是各个服务之间的入口点,承担着路由、负载均衡、安全认证等重要功能。为了实现动态的路由配置管理,通常需要通过中心化的配置管理系统来实现灵活的路由更新,而无需重启网关服务。Nacos 作为一个开源…

复古壁纸中棕色系和米色系哪个更受欢迎?

根据最新的搜索结果,我们可以看到棕色系和米色系在复古壁纸设计中都非常受欢迎。以下是对这两种颜色系受欢迎程度的分析: 棕色系 受欢迎程度:棕色系在复古壁纸中非常受欢迎,因为它能够营造出温暖、质朴和自然的氛围。棕色系的壁纸…

Linux 非阻塞IO

Linux 非阻塞IO 1. fcntl() 在Linux操作系统中,fcntl() 是一个用于操作文件描述符的系统调用。它提供了多种功能,包括控制文件描述符的属性、管理文件锁定、设置文件的非阻塞模式等。 本文只截取了用于IO模型的 fcntl() 部分内容, fcntl() …

go入门Windows环境搭建

简介 Go 即 Golang,是 Google 公司 2009 年 11 月正式对外公开的一门编程语言。 根据 Go 语言开发者自述,近 10 多年,从单机时代的 C 语言到现在互联网时代的 Java,都没有令人满意的开发语言,而 C往往给人的感觉是&a…

Mybatis初步了解

mysql缓存:根据sql语句进入缓存,如果sql语句多加一个空格就进入不到同一个缓存,另外数据库数据发生了更新,缓存中的数据不会同步。 延迟加载:先查询基本信息,再查询其他信息,而不是一次就查询出…

短连接项目01---基本框架的搭建和测试运行

文章目录 1.什么是短链2.仓库的创建3.项目的创建4.配置文件的修改5.三个模块的创建5.1如何创建5.2类型的选择5.3包的完善 6.yml文件的配置7.启动类的测试8可能会出现的问题 1.什么是短链 下面的这个就是一个长的url,我们的短链里面的链就是链接,也就是我…

2023年吉林省职业院校技能大赛网络系统管理样题-网络配置(华三代码)

目录 附录1:拓扑图 附录2:地址规划表 1.S1 2.S3 3.S4 4.S5 5.S7 6.S8 7.S9 8.R1 9.R2 10.R3 11.EG1 12.EG2 13.AC1 14.AC2 附录1:拓扑图 编号 型号

WSL 安装cuDNN

WSL 安装cuDNN 参考文档:https://docs.nvidia.com/deeplearning/cudnn/installation/latest/linux.html#verifying-the-install-on-linux 1. 下载相应包 根据下方下载地址进入下载界面,并选择与自己电脑相对应的平台执行图中的命令 下载地址&#xff1…

stack 和 queue容器的介绍和使用

1.stack的介绍 1.1stack容器的介绍 stack容器的基本特征和功能我们在数据结构篇就已经详细介绍了,还不了解的uu, 可以移步去看这篇博客哟: 数据结构-栈数据结构-队列 简单回顾一下,重要的概念其实就是后进先出,栈在…

Windows中本地组策略编辑器gpedit.msc打不开/微软远程桌面无法复制粘贴

目录 背景 解决gpedit.msc打不开 解决复制粘贴 剪贴板的问题 启用远程桌面剪贴板与驱动器 重启RDP剪贴板监视程序 以上都不行?可能是操作被Win11系统阻止 最后 背景 远程桌面无法复制粘贴,需要查看下主机策略组设置,结果按WinR输入…

(2023 RESS ) Federated multi-source domain adversarial adaptation framework

📚 研究背景与挑战 机械设备的故障诊断对于保障生产效率和安全至关重要。传统的智能诊断方法依赖于大量的训练数据,但在实际工业场景中,数据收集受到经济和时间因素的限制。更棘手的是,由于行业竞争和隐私安全问题,不…

Python数据分析-Python语法基础,IPython和Jupyter-Notebooks(二)

title: ‘Python数据分析:Python语法基础,IPython和Jupyter Notebooks(二)’ tags: python数据分析 categories:python数据分析 keywords:python数据分析 cover: …/img/404_icecream_whale.png description: 本文介绍python的基础语法和jup…

Redis学习之哨兵一

一、基本概念 1.主从复制的问题: 一旦主节点出现故障需要手动的将一个从节点晋升为主节点同时需要修改应用方的主节点地址还需要通过命令其他节点去复制新的主节点。 主节点的写能力和存储能力受到单机的限制 2.高可用: 上图为一主二从的redis主从复制模…

【C++高并发服务器WebServer】-9:多线程开发

本文目录 一、线程概述1.1 线程和进程的区别1.2 线程之间共享和非共享资源1.3 NPTL 二、线程操作2.1 pthread_create2.2 pthread_exit2.3 pthread_join2.4 pthread_detach2.5 patch_cancel2.6 pthread_attr 三、实战demo四、线程同步五、死锁六、读写锁七、生产消费者模型 一、…

【时时三省】(C语言基础)文件的随机读写

山不在高,有仙则名。水不在深,有龙则灵。 ----CSDN 时时三省 fseek 根据文件指针的位置和偏移量来定位文件指针 示例: 这个输出的就是ade seek_cur的意思是从当前偏移量 2就是从a往后偏移两个就是d 偏移量 SEEK_CUR…

【python】python基于机器学习与数据分析的二手手机特性关联与分类预测(源码+数据集)【独一无二】

👉博__主👈:米码收割机 👉技__能👈:C/Python语言 👉专__注👈:专注主流机器人、人工智能等相关领域的开发、测试技术。 python基于机器学习与数据分析的二手手机特性关联与…

WPF进阶 | WPF 数据绑定进阶:绑定模式、转换器与验证

WPF进阶 | WPF 数据绑定进阶:绑定模式、转换器与验证 一、前言二、WPF 数据绑定基础回顾2.1 数据绑定的基本概念2.2 数据绑定的基本语法 三、绑定模式3.1 单向绑定(One - Way Binding)3.2 双向绑定(Two - Way Binding)…

【数据结构】动态内存管理函数

动态内存管理 为什么存在动态内存管理动态内存函数的介绍🎊malloc补充:perror函数🎊free🎊calloc🎊realloc 常见动态内存错误对空指针的解引用操作对动态开辟空间的越界访问对非动态开辟内存使用free释放使用free释放一…

neo4j-community-5.26.0 install in window10

在住处电脑重新配置一下neo4j, 1.先至官方下载 Neo4j Desktop Download | Free Graph Database Download Neo4j Deployment Center - Graph Database & Analytics 2.配置java jdk jdk 21 官网下载 Java Downloads | Oracle 中国 path: 4.查看java -version 版本 5.n…