Git提交代码详细流程及问题总结

2025-02-06 04:50

本文主要是介绍Git提交代码详细流程及问题总结,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

《Git提交代码详细流程及问题总结》:本文主要介绍Git的三大分区,分别是工作区、暂存区和版本库,并详细描述了提交、推送、拉取代码和合并分支的流程,文中通过代码介绍的非常详解,需要的朋友可以参考下...

1.git 三大分区

  • 工作区:开发人员当前正在开发的项目工作空间,是我们肉眼可见的。 Git系统不会管工作区中任何文件内容的修改,仅监控暂存区。
  • 暂存区:Git系统内部,管理开发人员项目中临时修改文件的区域,用于临时存放文件的改动,它会存放上一次开发人员 git add 添加之后的数据。 在后续继续向版本库提交更新代码时,git会比较暂存区与工作区间的差异,给予相关操作提示。
  • 版本库:类似仓库,存储很多配置信息、日志信息、以及文件各种修改后的最终版本信息。

2.Git提交、推送、拉取代码、合并分支详细流程

  • 查看工作区文件状态
git status

Git提交代码详细流程及问题总结

  • 添加文件到暂存区
git add <文件名>
git add编程 ./* #添加所有文件到暂存区

Git提交代码详细流程及问题总结

  • 将暂存区的文件添加到版本库
git commit -m '提交注释信息'

Git提交代码详细流程及问题总结

  • 推送本地分支的更新到远程主机
git push

Git提交代码详细流程及问题总结

  • 切换分支
git checkout <远程分支名>

Git提交代码详细流程及问题总结

  • 合并分支
git merge <源分支名>

Git提交代码详细流程及问题总结

  • 保存当前工作进度
    使用情况:分支有改变时不提交不能进行切换分支操作
    该命令会保存当前工作进度,会把暂存区和工作区的改动保存到一个未完结变更的堆栈中。
git stash 

Git提交代码详细流程及问题总结

  • 远端拉取代码
git pull #是 git pull --merge 的缩写;将远程库的最新内容拉到本地,用户检查后决定是否合并
git pull --rebase #远程主机的最新内容拉取到本地后直接合并;可能会产生冲突需要手动解决

Git提交代码详细流程及问题总结

  • 推送本地分支的更新到远程主机

    Git提交代码详细流程及问题总结

    此时可以在主分支查询到从自己分支合并过来的提交记录

  • 切换回自己分支

    Git提交代码详细流程及问题总结

  • 恢复最新的进度到工作区

git stas编程h pop

Git提交代码详细流程及问题总结

3.问题总结

问题一、误提交:提交代码时遇到冲突,但冲突文件并不想提交【一般可以通过将文件添加到.gitijsgnore长久解决,但是由于我的文件具有线上版本,.gitignore文件不起作用】

Git提交代码详细流程及问题总结

解决办法:

git add .
git reset HEAD .
  • git add .】:添加所有文件到暂存区
  • git reset HEAD .】:将此次修改的所有文件退回到工作区

4.git push补充知识

  • 将本地分支的更新推送到远程主机
git push <远程主机名> <本地分支名>:<远程分支名> # :前后不可以有空格
git push origin dev-lwq:master #将本地的dev-lwq分支推送到origin主机的master分支
  • 省略远程分支名:
    (1)本地与远程存在分支名重复情况,此时可以省略(2)若远程分支不存在,若省略则会新建一个与本地分支同名的远程分支
git push <远程主机名> js<本地分支名>
git push origin dev-lwq #将本地的dev-lwq分支推送到origin主机的dev-lwq分支,若origin主机不存在dev-lwq分支则会新建
  • 省略本地分支名:删除指定的远程分支
git push <远程主机名> :<远程分支名>
git push origin :master #删除origin主机的master分支
git push origin --delete master#等同于上面命令
  • 仅保留远程主机名:当前分支与远程分支存在追踪关系
git push <远程主机名>
git push origin #将当前分支推动到origin主机android的对应分支
git push #省略远程主机名:当前分支只有一个追踪分支
  • 当前分支与多个主机存在追踪关系,通过以下命令可以指定一个默认主机
git push -u <远程主机名> <本地分支名>
git push -u origin master #master分支推送到origin主机且设置origin为默认主机

总结 

到此这篇关于Git提交代码详细流程及问题总结的文章就介绍到这了,更多相关Git提交代码流程内容请搜索China编程(www.chinasem.cn)以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程China编程(www.chinasem.cn)!

这篇关于Git提交代码详细流程及问题总结的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1153303

相关文章

线上Java OOM问题定位与解决方案超详细解析

《线上JavaOOM问题定位与解决方案超详细解析》OOM是JVM抛出的错误,表示内存分配失败,:本文主要介绍线上JavaOOM问题定位与解决方案的相关资料,文中通过代码介绍的非常详细,需要的朋... 目录一、OOM问题核心认知1.1 OOM定义与技术定位1.2 OOM常见类型及技术特征二、OOM问题定位工具

基于 Cursor 开发 Spring Boot 项目详细攻略

《基于Cursor开发SpringBoot项目详细攻略》Cursor是集成GPT4、Claude3.5等LLM的VSCode类AI编程工具,支持SpringBoot项目开发全流程,涵盖环境配... 目录cursor是什么?基于 Cursor 开发 Spring Boot 项目完整指南1. 环境准备2. 创建

C#实现千万数据秒级导入的代码

《C#实现千万数据秒级导入的代码》在实际开发中excel导入很常见,现代社会中很容易遇到大数据处理业务,所以本文我就给大家分享一下千万数据秒级导入怎么实现,文中有详细的代码示例供大家参考,需要的朋友可... 目录前言一、数据存储二、处理逻辑优化前代码处理逻辑优化后的代码总结前言在实际开发中excel导入很

通过Docker容器部署Python环境的全流程

《通过Docker容器部署Python环境的全流程》在现代化开发流程中,Docker因其轻量化、环境隔离和跨平台一致性的特性,已成为部署Python应用的标准工具,本文将详细演示如何通过Docker容... 目录引言一、docker与python的协同优势二、核心步骤详解三、进阶配置技巧四、生产环境最佳实践

MyBatis分页查询实战案例完整流程

《MyBatis分页查询实战案例完整流程》MyBatis是一个强大的Java持久层框架,支持自定义SQL和高级映射,本案例以员工工资信息管理为例,详细讲解如何在IDEA中使用MyBatis结合Page... 目录1. MyBATis框架简介2. 分页查询原理与应用场景2.1 分页查询的基本原理2.1.1 分

SpringBoot+RustFS 实现文件切片极速上传的实例代码

《SpringBoot+RustFS实现文件切片极速上传的实例代码》本文介绍利用SpringBoot和RustFS构建高性能文件切片上传系统,实现大文件秒传、断点续传和分片上传等功能,具有一定的参考... 目录一、为什么选择 RustFS + SpringBoot?二、环境准备与部署2.1 安装 RustF

Python实现Excel批量样式修改器(附完整代码)

《Python实现Excel批量样式修改器(附完整代码)》这篇文章主要为大家详细介绍了如何使用Python实现一个Excel批量样式修改器,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一... 目录前言功能特性核心功能界面特性系统要求安装说明使用指南基本操作流程高级功能技术实现核心技术栈关键函

Vue3绑定props默认值问题

《Vue3绑定props默认值问题》使用Vue3的defineProps配合TypeScript的interface定义props类型,并通过withDefaults设置默认值,使组件能安全访问传入的... 目录前言步骤步骤1:使用 defineProps 定义 Props步骤2:设置默认值总结前言使用T

Python中logging模块用法示例总结

《Python中logging模块用法示例总结》在Python中logging模块是一个强大的日志记录工具,它允许用户将程序运行期间产生的日志信息输出到控制台或者写入到文件中,:本文主要介绍Pyt... 目录前言一. 基本使用1. 五种日志等级2.  设置报告等级3. 自定义格式4. C语言风格的格式化方法

HTTP 与 SpringBoot 参数提交与接收协议方式

《HTTP与SpringBoot参数提交与接收协议方式》HTTP参数提交方式包括URL查询、表单、JSON/XML、路径变量、头部、Cookie、GraphQL、WebSocket和SSE,依据... 目录HTTP 协议支持多种参数提交方式,主要取决于请求方法(Method)和内容类型(Content-Ty