Git常用操作总结,经常遇到但是记不住

2024-01-29 10:48

本文主要是介绍Git常用操作总结,经常遇到但是记不住,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

今天分享一些我平时在使用git时经常会遇到的几个问题,由于命令一直记不住,每次都得去搜索贼麻烦,所以今天想着整理一下分享出来,希望能帮助到也经常遇到这些问题的你。

图片

Git remote 使用总结

使用场景:新建一个git仓库并与远程关联

  1. 初始化一个新的空的git仓储,并在仓储下做一些改动;

mkdir gitDir
cd gitDir/
git init
touch file
#查看当前未提交的改动 
git status 
git add file 
#将本次改动提交到本地仓库
git commit -m "新建文件file" 
  1. 在github上或者码云上新建一个仓储A;

  2. 给本地仓库添加远程仓库A并将本地的master分支跟踪到远程的分支;

# git remote add 远程仓库名名称唯一即可 远程仓库地址 
git remote add origin https://gitee.com/isevenluo/test.git 
# 查看关联的所有的远程仓库名称及地址 
git remote -v 
# 查看所有的远程仓储名称 
git remote 
# 提交本地仓库分支(master) 给远程仓库(origin)分支(master) 此处是强制提交
git push origin master -f 
# 查看当前未提交的内容,此时应该为空
git status 

使用场景:A仓库下代码提交至B仓库

这种场景也很常见,就是已有仓库A,现在需要将A仓库的代码重新提交到远程仓库B。

  1. 克隆仓储A的代码到本地并修改;

  2. 查看当前远程仓储,结果是仓储A

git remote -v
  1. 删除当前远程分支(也可以不删)

git remote remove A
  1. 新增远程仓储B

#URL为仓储B的地址
git remote add repository_B URL 
  1. 提交本次修改至本地仓储

git add . 
git commit -am "提交修改至本地仓库"
  1. 提交本地仓库到远程仓储 repository_B 的master分支

#需强制提交,因远程分支的readMe文件与本地的有冲突
git push repository_B master -f  

需学习命令

git remote
git remote -v
git remote add repositiry_name repository_url
git remote remove repositiry_name
git push repositiry_name branch -f
git status

git push 报错 Updates were rejected because the tip of your current branch is behind

问题

在push代码时,遇到这种问题 Updates were rejected because the tip of your current branch is behind (更新被拒绝,因为当前分支的落后与远程分支)

解决

有三种方案:

  1. push前先将远程repository修改pull下来,然后在推送;

git pull origin master 
git push -u origin master
  1. 使用强制push的方法:

git push -u origin master -f 

这样会使远程修改丢失,一般是不可取的,尤其是多人协作开发的时候。

  1. 若不想merge远程和本地修改,可以先创建新的分支:

git branch [name] 
#然后push 
git push -u origin [name]

衍生问题

使用上述方法在pull时可能会遇到如下问题:

  1. git pull 提示这个错误,fatal: refusing to merge unrelated histories,中文意思就是拒绝合并不相关的历史。

解决

出现这个问题的最主要原因还是在于本地仓库和远程仓库实际上是独立的两个仓库。假如我之前是直接 git clone 的方式在本地建立起远程 github 仓库的本地克隆仓库就不会有这问题了。查阅了一下资料,发现可以在 pull 命令后紧接着使用 --allow-unrelated-history 选项来解决问题(该选项可以合并两个独立启动仓库的历史)。

git pull origin master --allow-unrelated-histories

以上是将远程仓库的文件拉取到本地仓库了,紧接着将本地仓库的提交推送到远程github仓库上,使用的命令是:

git push <远程主机名> <本地分支名>:<远程分支名> 
# 常用的举例就是: 
git push origin master:master 

这样就可以提交成功了。

  1. git pull 提示这个错误 There is no tracking information for the current branch(没有当前分支的跟踪信息)

这是因为本地分支和远程分支没有建立联系,使用下面命令查看:

# 可以查看本地分支和远程分支的关联关系
git branch -vv 
# 查看远程仓库
git remote -v 

解决方法

一种方法是直接指定远程master:

git pull origin master

另外一种方法就是先指定本地master到远程的master,然后再去pull:

git branch --set-upstream-to=origin/远程分支的名字 本地分支的名字 
git pull
 

图片

码字不易,觉得内容对你有帮助,希望你能花 0.1秒 点个赞哟~ 你小小的点赞永远是我持续创作的动力,谢谢你(疯狂比心)~

这篇关于Git常用操作总结,经常遇到但是记不住的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Springboot的ThreadPoolTaskScheduler线程池轻松搞定15分钟不操作自动取消订单

《Springboot的ThreadPoolTaskScheduler线程池轻松搞定15分钟不操作自动取消订单》:本文主要介绍Springboot的ThreadPoolTaskScheduler线... 目录ThreadPoolTaskScheduler线程池实现15分钟不操作自动取消订单概要1,创建订单后

SpringBoot操作spark处理hdfs文件的操作方法

《SpringBoot操作spark处理hdfs文件的操作方法》本文介绍了如何使用SpringBoot操作Spark处理HDFS文件,包括导入依赖、配置Spark信息、编写Controller和Ser... 目录SpringBoot操作spark处理hdfs文件1、导入依赖2、配置spark信息3、cont

使用JavaScript操作本地存储

《使用JavaScript操作本地存储》这篇文章主要为大家详细介绍了JavaScript中操作本地存储的相关知识,文中的示例代码讲解详细,具有一定的借鉴价值,有需要的小伙伴可以参考一下... 目录本地存储:localStorage 和 sessionStorage基本使用方法1. localStorage

Java 枚举的常用技巧汇总

《Java枚举的常用技巧汇总》在Java中,枚举类型是一种特殊的数据类型,允许定义一组固定的常量,默认情况下,toString方法返回枚举常量的名称,本文提供了一个完整的代码示例,展示了如何在Jav... 目录一、枚举的基本概念1. 什么是枚举?2. 基本枚举示例3. 枚举的优势二、枚举的高级用法1. 枚举

使用JavaScript将PDF页面中的标注扁平化的操作指南

《使用JavaScript将PDF页面中的标注扁平化的操作指南》扁平化(flatten)操作可以将标注作为矢量图形包含在PDF页面的内容中,使其不可编辑,DynamsoftDocumentViewer... 目录使用Dynamsoft Document Viewer打开一个PDF文件并启用标注添加功能扁平化

JavaScript DOM操作与事件处理方法

《JavaScriptDOM操作与事件处理方法》本文通过一系列代码片段,详细介绍了如何使用JavaScript进行DOM操作、事件处理、属性操作、内容操作、尺寸和位置获取,以及实现简单的动画效果,涵... 目录前言1. 类名操作代码片段代码解析2. 属性操作代码片段代码解析3. 内容操作代码片段代码解析4.

Android数据库Room的实际使用过程总结

《Android数据库Room的实际使用过程总结》这篇文章主要给大家介绍了关于Android数据库Room的实际使用过程,详细介绍了如何创建实体类、数据访问对象(DAO)和数据库抽象类,需要的朋友可以... 目录前言一、Room的基本使用1.项目配置2.创建实体类(Entity)3.创建数据访问对象(DAO

SpringBoot使用Apache POI库读取Excel文件的操作详解

《SpringBoot使用ApachePOI库读取Excel文件的操作详解》在日常开发中,我们经常需要处理Excel文件中的数据,无论是从数据库导入数据、处理数据报表,还是批量生成数据,都可能会遇到... 目录项目背景依赖导入读取Excel模板的实现代码实现代码解析ExcelDemoInfoDTO 数据传输

mysql主从及遇到的问题解决

《mysql主从及遇到的问题解决》本文详细介绍了如何使用Docker配置MySQL主从复制,首先创建了两个文件夹并分别配置了`my.cnf`文件,通过执行脚本启动容器并配置好主从关系,文中还提到了一些... 目录mysql主从及遇到问题解决遇到的问题说明总结mysql主从及遇到问题解决1.基于mysql

Python使用asyncio实现异步操作的示例

《Python使用asyncio实现异步操作的示例》本文主要介绍了Python使用asyncio实现异步操作的示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋... 目录1. 基础概念2. 实现异步 I/O 的步骤2.1 定义异步函数2.2 使用 await 等待异