首页 > 其他分享 >git push命令

git push命令

时间:2025-01-10 15:32:28浏览次数:3  
标签:git -- 仓库 命令 本地 push 远程 分支

git push 常用命令


1. 拉取远程仓库最新数据

使用 git fetch
git fetch
  • 作用:

    • 获取远程仓库的最新数据(包括分支、标签等),但不会修改本地工作目录。
  • 结果:

    • 仅更新远程分支(如 origin/main)的状态,不会自动合并到本地分支。

使用 git pull
git pull
  • 作用

    • 从远程仓库拉取最新的数据并合并到当前分支。
  • 结果

    • 本地分支与远程分支同步,更新到最新状态。
  • 如果希望以 rebase 方式拉取数据(保持提交历史线性):

    git pull --rebase
    

2. 检查远程仓库状态

使用 git remote update
git remote update
  • 作用:

    • 从所有远程仓库获取最新的分支、标签等信息。
  • 结果:

    • 不会合并,也不会更新当前分支,仅刷新远程仓库的信息。

查看远程分支更新
git fetch --all
  • 作用:

    • 从所有远程仓库拉取所有分支的最新状态。

3. 重置本地分支到远程最新状态

如果希望直接让本地分支完全与远程分支一致,可以使用以下命令:

强制同步到远程最新状态
git reset --hard origin/<branch-name>
  • 作用

    • 将本地分支重置为远程分支的最新状态,所有本地未提交的更改将被丢弃。
  • 示例:

    git reset --hard origin/main
    

4. 更新远程的分支和标签信息

更新所有远程分支和标签
git fetch --prune
  • 作用:

    • 获取远程分支的最新数据,并删除本地不存在的远程分支。

5. 更新所有子模块

如果仓库中有子模块,刷新时需要同步更新子模块:

git submodule update --init --recursive
  • 作用:

    • 更新所有子模块到指定的版本。

6. 清理本地无用数据

清除无效的远程分支
git remote prune origin
  • 作用:

    • 删除本地已失效的远程分支引用。

清理本地缓存
git gc
  • 作用:

    • 清理本地仓库的垃圾数据,优化性能。

7. 查看状态和对比

查看本地与远程分支的差异
git status
  • 显示当前分支是否与远程分支同步。
对比本地分支与远程分支的提交
git log origin/<branch-name>..<branch-name>
  • 示例:

    git log origin/main..main
    
    • 显示本地分支与远程分支的不同提交。

8. 示例完整流程

以下是一个刷新本地仓库的完整流程:

  1. 更新远程数据:

    git fetch --all
    
  2. 查看分支状态:

    git status
    
  3. 拉取远程分支的最新代码:

    git pull --rebase
    
  4. 如果需要重置本地分支:

    git reset --hard origin/main
    

通过这些步骤,你可以确保本地仓库的所有数据与远程仓库保持同步。

标签:git,--,仓库,命令,本地,push,远程,分支
From: https://blog.csdn.net/h_bpdwn/article/details/145059212

相关文章

  • linux常用基础命令1
    常用命令查看当前目录下个各个文件大小查看当前系统储存使用情况查看当前路径删除当前目录下所有包含".log"的文件linux开机启动jar更改自动配置文件后操作关闭自启动linux静默启动java服务查询端口被占用查看软件版本重启关机开机启动取别名清空当前行创建文件touch创建......
  • AI编程工具怎么选?GitHub Copilot、AI Assistant与Cursor,谁是你的最佳拍档?
    大家好,欢迎来到程序视点!我是小二哥。在大模型技术迅猛发展的今天,AI编程已经很普遍了!从AI编程插件工具,到AI编程IDE,已经有很多的选择了!小二哥这里主要提及GitHubCopilot,JetBrainsAIAssistant和Cursor。主要原因是:对比多款产品后,这三款工具是目前读者小伙伴中受众最高的,也是小......
  • 【踩坑指南2.0 2025最新】Scala中如何在命令行传入参数以运行主函数
    这个地方基本没有任何文档记录,在学习的过程中屡屡碰壁,因此记录一下这部分的内容,懒得看可以直接跳到总结看结论。踩坑步骤首先来看看书上让我们怎么写://main.scalaobjectStart{defmain(args:Array[String])={try{valscore=args(1).toIntval......
  • 开关不一定是开关灯用 - 命令模式(Command Pattern)
    命令模式(CommandPattern)命令模式(CommandPattern)命令设计模式命令设计模式结构图命令设计模式涉及的角色talkischeap,showyoumycode总结命令模式(CommandPattern)命令模式(CommandPattern)是一种行为型设计模式,它将请求封装为对象,从而使你可以用不同的请求对客......
  • 使用Typora+Gitee+PicGo解决.md文件发给别人时无法显示图片的问题【2025最新超详细】
    下面是一个关于如何使用Typora、Gitee和PicGo解决.md文件发送给别人时无法显示图片的详细教程。在撰写.md文件时,通常会嵌入一些图片,尤其是在使用Typora进行编辑时。然而,当你将包含图片的.md文件发送给他人时,如果图片没有正确上传到公共的图片服务器,接收方往往......
  • git的提交规范
    git的提交规范包括两个字段:type(必需)和subject(必需)type用于说明commit的类别,只允许使用下面9个标识。feat:新功能(feature)fix:修补bugdocs:文档(documentation)style:格式(不影响代码运行的变动)refactor:重构(即不是新增功能,也不是修改bug的代码变动)chore:构建过程或辅......
  • 一些常用命令
    Java走socks5和http代理Java走Socks5代理java-DsocksProxyHost=127.0.0.1-DsocksProxyPort=1111-jarJava走http/https代理java-Dhttp.proxyHost=127.0.0.1-Dhttp.proxyPort=8080-jarjava-Dhttps.proxyHost=127.0.0.1-Dhttps.proxyPort=8080-jarKali代理配置proxyc......
  • 多开微信bat命令怎么写
    创建批处理文件:我们需要创建一个新的批处理文件(例如 open_wechat.bat),该文件将包含启动两个微信实例的命令。使用命令行参数:通过在微信启动命令中添加 --secondary-instance 参数,确保第二个实例不会与第一个冲突。代码@echooffREM启动第一个微信实例start"""C:\Pr......
  • GitLab安装与配置
    由于图片和格式解析问题,为了更好阅读体验可前往阅读原文对于gitlab的安装本人都是在arm架构Centos7.9虚拟机上进行的,请悉知本人安装环境,或者与本人的环境保持一致,以便产生不必要的疑惑这里使用docker安装Gitlab,机器上需要先安装docker,如果你还不知道docker,可以先看看我的往期......
  • 批量建文件夹bat命令
    假设你有一个文本文件 folders.txt,其中每行包含一个要创建的文件夹名称。你可以使用以下批处理脚本来读取这个文件并创建相应的文件夹。folders.txt 内容示例Folder1Folder2Folder3SubFolder\FolderASubFolder\FolderB批处理脚本(create_folders.bat)@echoof......