git 遷移之獲取原庫所有分支

以下是一個安全的 Bash 腳本,用于將遠程 Git 倉庫的所有分支檢出到本地(自動跳過已存在的分支):


#!/bin/bash# 獲取所有遠程分支(排除 HEAD)
remote_branches=$(git branch -r | grep -v 'HEAD\|->')# 循環處理每個遠程分支
for branch in $remote_branches; do# 提取純分支名(去掉 origin/ 前綴)local_branch=${branch#origin/}# 檢查本地是否已存在該分支if git show-ref --quiet refs/heads/"$local_branch"; thenecho "分支 '$local_branch' 已存在,跳過"elseecho "創建本地分支: $local_branch (跟蹤 $branch)"# 創建本地分支并設置跟蹤git branch -q --track "$local_branch" "$branch"fi
doneecho "操作完成!當前所有遠程分支已同步到本地"

使用說明:

  1. 保存腳本:將上述代碼保存為?git-checkout-all.sh

  2. 添加執行權限

    
    chmod +x git-checkout-all.sh

  3. 在 Git 倉庫根目錄運行

    
    ./git-checkout-all.sh

腳本特點:

  1. 自動過濾

    • 排除遠程 HEAD 指針

    • 跳過已存在的本地分支

  2. 安全操作

    • 不會覆蓋現有分支

    • 保持遠程跟蹤關系

  3. 清晰輸出

    • 顯示跳過的分支

    • 顯示新創建的分支

注意事項:

  1. 確保先執行?git fetch?獲取最新遠程分支列表

  2. 分支名包含特殊字符(如空格)時可能需要額外處理

  3. 如需強制覆蓋已存在分支,請使用?-f?選項(謹慎使用):

    
    git branch -f --track "$local_branch" "$branch"

工作原理:

  1. 通過?git branch -r?獲取所有遠程分支

  2. 使用?grep -v?過濾掉 HEAD 指針

  3. 循環處理每個分支:

    • 去除?origin/?前綴得到本地分支名

    • 檢查本地是否已存在同名分支

    • 不存在時創建帶跟蹤關系的分支

提示:使用?git branch -vv?可查看所有本地分支及其跟蹤關系

遷移步驟:

git remote rename origin old_origingit remote add origin xxxx.gitgit push -u origin --allgit push -u origin --tags

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/87110.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/87110.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/87110.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

設計模式 | 適配器模式

適配器模式(Adapter Pattern) 是結構型設計模式中的連接器大師,它允許不兼容接口的類能夠協同工作。本文將深入探索適配器模式的核心思想、實現技巧以及在C中的高效實踐,解決現實開發中的接口兼容性問題。 為什么需要適配器模式 …

RTL 級機器人電機控制器的 FPGA 設計

借助Verilog,在FPGA中實現了帶編碼器的兩臺電機的電機控制系統的RTL級設計。 介紹 借助硬件描述語言 (HDL) Verilog 和 AMD Vivado 設計套件,在 AMD Spartan-7 FPGA 中實現帶編碼器的兩個電機的控制器系統的 RTL 設計。 在這個項目中,使用了搭…

4_Flink CEP

Flink CEP 1、何為CEP? CEP,全稱為復雜事件處理(Complex Event Processing),是一種用于實時監測和分析數據流的技術。 CEP詳細講解: CEP是基于動態環境的事件流的分析技術,事件是狀態變化&am…

容器基礎知識2-K8s 和 Docker 的關系與管理邏輯詳解

K8s 和 Docker 的關系與管理邏輯詳解 一、先搞懂:Docker 和 K8s 分別是做什么的? Docker(容器工具):好比「集裝箱工廠」,負責把應用和依賴打包成標準化容器(類似集裝箱)&#xff0…

QT MaintenanceTool 登錄無法找到 QtAccount 憑據

親測有效:QT6 Maintenance Tool 登錄問題_qt6 maintenancetool-CSDN博客 將ini這個配置文件移出文件夾后,在切換自己賬戶登錄即可

華為云Flexus+DeepSeek征文|利用華為云一鍵部署 Dify 平臺并接入 DeepSeek 大模型,構建長篇文章生成助手

目錄 前言 1 華為云一鍵部署 Dify 平臺 1.1 華為云 Dify 平臺介紹 1.2 部署過程介紹 1.3 登錄 Dify 平臺 2 接入華為云 ModelArts Studio 中的 DeepSeek 大模型 3 構建長篇文章生成助手 3.1 簡要介紹長篇文章生成助手 3.2 開始節點 3.3 生成標題和大綱(LL…

js的一些基礎概念總結

1.變量聲明 首先js變量聲明有三種,var,const,let,這三種變量聲明中我們第一優先使用const,需要改變這個值的時候我們用ley,var是盡量不去使用。 那么我們現在來總結一下三種聲明變量的區別。首先是var let …

防 XSS和CSRF 過濾器(Filter)

會話管理存在問題: 1.服務集群部署或者是分布式服務如何實現會話共享 2.會話的不同存儲地方的安全性問題 答: 會話共享 可以使用后端集中管理(redis)或者客戶端管理 (jwt); 存儲安全性 這個還真的沒有太好的方式&…

鴻蒙容器組件 WaterFlow、FlowItem解析:動態瀑布流布局實踐

一、引言:不規則布局的智能化解決方案 在圖片社交、電商導購、資訊聚合等現代應用場景中,瀑布流布局以其靈活的空間利用率和自然的視覺流動感成為界面設計的重要選擇。鴻蒙提供的 WaterFlow 與 FlowItem 組件,通過智能布局算法與聲明式語法&…

概率密度基本概念

概率密度(Probability Density)是概率論中用于描述隨機變量分布的一種方式,特別適用于連續隨機變量。它并不是一個概率值,而是表示單位范圍內的概率大小或“濃度”。更具體地說,概率密度表示在某個特定值附近&#xff…

10-1 MySQL 索引優化與查詢優化

10-1 MySQL 索引優化與查詢優化 文章目錄 10-1 MySQL 索引優化與查詢優化1. 數據準備2. 索引失效案例2.1 索引字段:全值匹配最優2.2 索引字段:最佳左前綴法則2.3 主鍵插入順序2.4 索引字段進行了:計算、函數、類型轉換(自動或手動)導致索引失…

基于目標驅動的分布式敏捷開發

研究結論 風險對項目目標的影響 時間目標:需求管理不當(如需求優先級不明確、多產品負責人需求沖突)、架構變更導致的返工、跨站點協調問題(如第三方依賴、通信基礎設施不足)是影響項目時間的主要風險因素。質量目標&…

高通手機跑AI系列之——穿衣試裝算法

環境準備 手機 測試手機型號:Redmi K60 Pro 處理器:第二代驍龍8移動--8gen2 運行內存:8.0GB ,LPDDR5X-8400,67.0 GB/s 攝像頭:前置16MP后置50MP8MP2MP AI算力:NPU 48Tops INT8 &&…

opencv入門(5)圖像像素的讀寫操作和算術運算

文章目錄 1 圖像遍歷與修改1.1 使用數組1.2 使用指針 2 圖像的算術運算2.1 一般算術操作2.2 算術API 1 圖像遍歷與修改 C中支持 數組遍歷 和 指針方式遍歷 1.1 使用數組 訪問使用 image.at(row,col) 進行訪問 如果是單通道灰度圖,就使用image.at進行讀取 如果是三…

Stable Diffusion入門-ControlNet 深入理解-第三課:結構類模型大揭秘——深度、分割與法線貼圖

大家好,歡迎回到Stable Diffusion入門-ControlNet 深入理解系列的第三課! 在上一課中,我們深入探討了 ControlNet 文件的命名規則,以及線條類 ControlNet模型的控制方法。如果你還沒有看過第二篇,趕緊點這里補課:Stable Diffusion入門-ControlNet 深入理解 第二課:Contr…

噴油嘴深凹槽內輪廓測量的方法探究 —— 激光頻率梳 3D 輪廓測量

引言 噴油嘴作為燃油噴射系統核心部件,其深凹槽內輪廓精度直接影響燃油霧化效果與發動機排放性能。噴油嘴深凹槽具有深徑比大(可達 30:1)、孔徑小(φ0.5 - 2mm)、表面質量要求高(Ra≤0.2μm)等…

上證ETF50期權交易規則一文詳解

50ETF期權,首先這是期權交易,所以50ETF期權有期權交易的所有特征,其次,50ETF期權的標的對象是上證50,所以50ETF(認購看漲)期權的走勢和上證50的走勢是一樣的。 行權時間: 在行權日當…

Oracle獲取執行計劃之10046 技術詳解

Oracle 的 10046 事件是性能調優中最常用的工具之一,通過跟蹤會話的 SQL 執行細節,生成包含執行計劃、等待事件、綁定變量等信息的跟蹤文件,幫助定位性能瓶頸。以下是技術詳解: 一、10046 事件基礎 10046 是 Oracle 內部事件&…

Linux 日志監控工具對比:從 syslog 到 ELK 實戰指南

更多云服務器知識,盡在hostol.com 你有沒有被 Linux 上滿屏飛滾的日志整崩潰過?看著 /var/log 目錄越來越肥,關鍵日志像大海撈針一樣藏在里面,每次出故障就像拆盲盒,賭你能不能第一眼看出問題。 日志系統&#xff0c…

本地服務器部署后外網怎么訪問不了?內網地址映射互聯網上無法連接問題的排查

我的網站部署搭建在本地服務器上的,在內網可以正常訪問,但是外網無法訪問,該怎么排查?局域網內部經過路由器的,有設置了虛擬服務器轉發規則,在互聯網公網上還是無法訪問服務器怎么辦?相信很多人…