当前位置: 首页 > news >正文

git中多仓库工作的常用命令

记录一些git中多仓库工作的常用命令

  • 查看当前配置的远程仓库: git remote

  • 远程仓库的名称及其对应的 URL:git remote -v

  • 添加一个新的远程仓库:git remote add origin https://github.com/user/repo.git

  • 重命名已配置的远程仓库:git remote rename origin new-origin

  • 删除指定的远程仓库:git remote remove old-origin

  • 查看某个远程仓库的详细信息:git remote show origin

  • 初次推送分支到上游:git push --set-upstream new-origin master

  • 查看每个本地分支跟踪的是哪个远程分支:git branch -vv

    # 查看本地分支与远程分支的跟踪关系
    git branch -vv# 输出示例:
    * main     a1b2c3d [origin/main] 最新提交信息dev      e4f5g6h [upstream/dev] 功能开发feature  1234567 [fork/new-feature] 新特性
    
  • 查看某个远程仓库的所有分支: git remote show <远程仓库名>

  • 创建新本地分支并跟踪某个远程分支:git checkout -b <本地分支名> <远程仓库名>/<远程分支名>

    # 从 origin 仓库的 feature/login 分支创建本地分支
    git checkout -b login-feature origin/feature/login# 从 upstream 仓库的 dev 分支创建本地分支upstream-dev,并切换到upstream-dev分支
    git checkout -b upstream-dev upstream/dev# 创建分支时设置跟踪关系
    git checkout -b new-branch --track upstream/new-feature# 本地分支`my-dev`就会跟踪`upstream/dev`
    git checkout -b my-dev upstream/dev# 切换到已经存在的分支
    git checkout branchname# 查看所有分支,包括远程分支
    git branch -a
    
  • 如果已经有一个本地分支,可以设置它跟踪一个远程分支:git branch -u <远程仓库名>/<远程分支名> [<本地分支名>]

    # 更改本地分支跟踪的远程仓库
    git branch -u upstream/new-target my-local-branch# 将本地分支`my-dev`的跟踪关系改为`upstream/dev`
    git branch -u upstream/dev my-dev # 1. 获取远程仓库的所有分支信息
    git fetch origin# 2. 查看所有远程分支
    git branch -r# 3. 查看所有分支(本地+远程)
    git branch -a
    
  • 将本地分支推送到某个远程仓库:git push <远程仓库名> <本地分支名>:<远程分支名>

    # 推送到 origin 仓库的同名分支
    git push origin login-feature# 推送到 upstream 仓库的不同分支
    git push upstream login-feature:new-login-system# 初次推送分支到上游
    git push --set-upstream new-origin master# 将本地 main 分支推送到远程,并创建 origin/main
    git push -u origin main
    
  • 拉取时也可以指定从哪个远程仓库拉取哪个分支: git pull <远程仓库名> <远程分支名>

    # 从特定仓库拉取特定分支
    git pull origin login-feature# 从上游仓库拉取开发分支
    git pull upstream dev
    
  • 合并操作

    # 合并来自 origin 仓库的特性
    git merge origin/login-feature# 合并来自 upstream 的修复
    git merge upstream/fix-issue-123
    
http://www.lryc.cn/news/603626.html

相关文章:

  • Mac安装Navicat步骤Navicat Premium for Mac v17.1.9【亲测】
  • 【腾讯云】EdgeOne网站安全防护的配置方法 防范盗刷流量 附恶意IP和UA黑名单
  • YOLOv11.pt 模型转换为 TFLite 和 NCNN 模型
  • npm : 无法加载文件 D:\Nodejs\node_global\npm.ps1,因为在此系统上禁止运行脚本
  • Kafka运维实战 17 - kafka 分区副本从 1 增加到 3【实战】
  • 图形界面应用程序技术栈大全
  • Java把word转HTML格式
  • python中的 @dataclass
  • It学习资源下载
  • LeetCode热题100——155. 最小栈
  • 【JVM】常见的 Java 垃圾回收算法以及常见的垃圾回收器介绍及选型
  • Docker网络技术深度研究与实战手册
  • DisplayPort 与 Display Port Alt模式两者区别解析
  • java导出pdf(使用html)
  • 【LeetCode 热题 100】(二)双指针
  • 【初识数据结构】CS61B中的基数排序
  • 纯血鸿蒙 AudioRenderer+AudioCapturer+RingBuffer 实现麦克风采集+发声
  • Leetcode-3152 特殊数组 II
  • 从字符串中“薅出”最长子串:LeetCode 340 Swift 解法全解析
  • B+树高效实现与优化技巧
  • 如何选择AI IDE?对比Cursor分析功能差异
  • echarts图表点击legend报错问题(折线图)
  • 8.项目起步(2)
  • 数据库02 网页html01 day44
  • 图像增强11种几何变换方法示例
  • 从单机架构到分布式:Redis为何成为架构升级的关键一环?
  • 基于web的在线购物系统的设计与实现/在线商城的设计与实现
  • 架构实战——互联网架构模板(“网络层”技术)
  • MySQL MVCC:并发神器背后的原理解析
  • ElementUI表格 el-table实现自动循环滚动