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

相关文章

Spring Boot中WebSocket常用使用方法详解

《SpringBoot中WebSocket常用使用方法详解》本文从WebSocket的基础概念出发,详细介绍了SpringBoot集成WebSocket的步骤,并重点讲解了常用的使用方法,包括简单消... 目录一、WebSocket基础概念1.1 什么是WebSocket1.2 WebSocket与HTTP

golang中reflect包的常用方法

《golang中reflect包的常用方法》Go反射reflect包提供类型和值方法,用于获取类型信息、访问字段、调用方法等,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值... 目录reflect包方法总结类型 (Type) 方法值 (Value) 方法reflect包方法总结

IDEA中新建/切换Git分支的实现步骤

《IDEA中新建/切换Git分支的实现步骤》本文主要介绍了IDEA中新建/切换Git分支的实现步骤,通过菜单创建新分支并选择是否切换,创建后在Git详情或右键Checkout中切换分支,感兴趣的可以了... 前提:项目已被Git托管1、点击上方栏Git->NewBrancjsh...2、输入新的分支的

C# 比较两个list 之间元素差异的常用方法

《C#比较两个list之间元素差异的常用方法》:本文主要介绍C#比较两个list之间元素差异,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1. 使用Except方法2. 使用Except的逆操作3. 使用LINQ的Join,GroupJoin

Python实现对阿里云OSS对象存储的操作详解

《Python实现对阿里云OSS对象存储的操作详解》这篇文章主要为大家详细介绍了Python实现对阿里云OSS对象存储的操作相关知识,包括连接,上传,下载,列举等功能,感兴趣的小伙伴可以了解下... 目录一、直接使用代码二、详细使用1. 环境准备2. 初始化配置3. bucket配置创建4. 文件上传到os

mysql表操作与查询功能详解

《mysql表操作与查询功能详解》本文系统讲解MySQL表操作与查询,涵盖创建、修改、复制表语法,基本查询结构及WHERE、GROUPBY等子句,本文结合实例代码给大家介绍的非常详细,感兴趣的朋友跟随... 目录01.表的操作1.1表操作概览1.2创建表1.3修改表1.4复制表02.基本查询操作2.1 SE

JavaSE正则表达式用法总结大全

《JavaSE正则表达式用法总结大全》正则表达式就是由一些特定的字符组成,代表的是一个规则,:本文主要介绍JavaSE正则表达式用法的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录常用的正则表达式匹配符正则表China编程达式常用的类Pattern类Matcher类PatternSynta

一文详解Git中分支本地和远程删除的方法

《一文详解Git中分支本地和远程删除的方法》在使用Git进行版本控制的过程中,我们会创建多个分支来进行不同功能的开发,这就容易涉及到如何正确地删除本地分支和远程分支,下面我们就来看看相关的实现方法吧... 目录技术背景实现步骤删除本地分支删除远程www.chinasem.cn分支同步删除信息到其他机器示例步骤

python常用的正则表达式及作用

《python常用的正则表达式及作用》正则表达式是处理字符串的强大工具,Python通过re模块提供正则表达式支持,本文给大家介绍python常用的正则表达式及作用详解,感兴趣的朋友跟随小编一起看看吧... 目录python常用正则表达式及作用基本匹配模式常用正则表达式示例常用量词边界匹配分组和捕获常用re

c++中的set容器介绍及操作大全

《c++中的set容器介绍及操作大全》:本文主要介绍c++中的set容器介绍及操作大全,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录​​一、核心特性​​️ ​​二、基本操作​​​​1. 初始化与赋值​​​​2. 增删查操作​​​​3. 遍历方