git --- cherry pick

git --- cherry pick

  • cherry pick

cherry pick

  • Cherry Pick 是 Git 中的一個操作,它允許你選擇某個分支的某次(或多次)提交,并將其應用到當前分支,而不會合并整個分支的所有更改。

cherry pick 的作用

  • 只提取某個特定的提交(而不是整個分支的改動)。
    適用于修復 Bug 或移植某個功能,而不想合并整個分支。
    避免不必要的沖突,只引入需要的更改。

使用場景

  • 修復 Bug:如果某個 Bug 在 main 分支修復了,但 dev 分支也需要這個修復,可以直接 cherry-pick 這個提交。
  • 部分功能移植:某個功能在 feature-A 分支開發完成,但只想提取其中幾個關鍵提交到 main 分支。
  • 撤銷錯誤的提交:如果某個提交被誤合并到錯誤的分支,可以用 cherry-pick 把它移到正確的分支 (但是并不能刪除錯誤的提交)

基本用法

git cherry-pick <commit-hash>
## <commit-hash> 是你想要應用的提交的哈希值(如 a1b2c3d)。
示例

示例

  • 查看提交歷史,找到要應用的提交:
git log --oneline
# 輸出示例:
# a1b2c3d (HEAD -> main) Fix login bug
# e4f5g6h Add new feature

切換到目標分支(如 dev):

git checkout dev

執行 cherry-pick:

git cherry-pick a1b2c3d
# 這樣,Fix login bug 這個提交就會被應用到 dev 分支。
選項作用
-n(–no-commit) 只應用更改,但不自動提交
-e(–edit) 在應用提交前允許修改提交信息
-x在提交信息里追加來源提交的哈希(推薦用于追蹤來源)
–abort如果發生沖突,放棄 cherry-pick 操作
–continue解決沖突后繼續 cherry-pick

注意事項

  • 可能引發沖突:如果目標分支和原提交的上下文不同,可能需要手動解決沖突。
  • 慎用:過度使用 cherry-pick 可能導致提交歷史混亂,建議在必要時使用。
  • 與 merge 的區別:merge 合并整個分支的改動,而 cherry-pick 只挑部分提交。
    總結

Summary

  • git cherry-pick 是一個靈活的工具,適合精準移植某個提交,而不是整個分支的改動。合理使用可以提高開發效率,但濫用可能導致代碼歷史難以維護

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

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

相關文章

妙用《甄嬛傳》中的選妃來記憶概率論中的乘法公式

強烈推薦最近在看的不錯的B站概率論課程 《概率統計》正課&#xff0c;零廢話&#xff0c;超精講&#xff01;【孔祥仁】 《概率統計》正課&#xff0c;零廢話&#xff0c;超精講&#xff01;【孔祥仁】_嗶哩嗶哩_bilibili 其中概率論中的乘法公式&#xff0c;老師用了《甄嬛傳…

AI 的出現是否能替代 IT 從業者?

AI 的出現是否能替代 IT 從業者&#xff1f; AI 的快速發展正在深刻改變各行各業&#xff0c;IT 行業也不例外。然而&#xff0c;AI 并非完全替代 IT 從業者&#xff0c;而是與其形成互補關系。本文將從 AI 的優勢、IT 從業者的不可替代性、未來趨勢等方面&#xff0c;探討 AI…

【leetcode100】有效的括號

1、題目描述 給定一個只包括 (&#xff0c;)&#xff0c;{&#xff0c;}&#xff0c;[&#xff0c;] 的字符串 s &#xff0c;判斷字符串是否有效。 有效字符串需滿足&#xff1a; 左括號必須用相同類型的右括號閉合。左括號必須以正確的順序閉合。每個右括號都有一個對應的…

為什么使用Flask + uWSGI + Nginx 部署服務?

概述 在Python開發的web應用中&#xff0c;我們通常能夠看到flask、uWSGI、Nginx出現在一起&#xff0c;他們之間的關系是什么&#xff1f;為什么總是被應用在一起&#xff1f; &#xfeff; 三者共同使用為了實現一個目的&#xff1a;客戶端向服務端發送數據請求&#xff0c;服…

接口等冪處理

介紹 ? 什么是等冪&#xff08;Idempotency&#xff09;&#xff1f; 等冪 無論這個操作被執行多少次&#xff0c;結果都是一樣的&#xff0c;不會因為多次執行而產生副作用。 通俗一點說&#xff1a;“點一次和點一百次&#xff0c;效果是一樣的。” ? 在接口中&#xff0…

P1090合并果子(優先隊列)

洛谷題目 這里使用的是優先隊列&#xff0c;非常簡單 首先讓我們一起來學習一下優先隊列&#xff08;默認是從大到小來排列&#xff09; 首先要使用頭文件 #include<queue> using namespace std; 然后聲明有限隊列 priority_queue<int> a; priority_queue&…

藍橋杯備考---->并查集之 Lake Counting

這道題就統計有多少個連通塊就行了 這時候我們又需要把二維轉成一維了&#xff0c;也就是把每一個格子都給一個編號 當我們合并連通塊的時候&#xff0c;其實是只需要四個方向的 因為我們是從上往下遍歷的&#xff0c;我們遍歷到某個位置的時候&#xff0c;它已經和上面部分…

React受控表單綁定

受控表單綁定 在 React 中&#xff0c;受控組件&#xff08;Controlled Component&#xff09;是指表單元素的值由 React 組件的 state 管理&#xff0c;React 通過 onChange 事件監聽輸入變化&#xff0c;并實時更新 state&#xff0c;從而控制表單輸入值。 為什么要使用受控…

8、linux c 信號機制

一、信號概述 1. 信號概念 信號是一種在軟件層次上對中斷機制的模擬&#xff0c;是一種異步通信方式。信號的產生和處理都由操作系統內核完成&#xff0c;用于在進程之間傳遞信息或通知某些事件的發生。 2. 信號的產生 信號可以通過以下方式產生&#xff1a; 按鍵產生&…

CSP-J 2019 入門級 第一輪(初賽) 完善程序(2)

【題目】 CSP-J 2019 入門級 第一輪&#xff08;初賽&#xff09; 完善程序&#xff08;2&#xff09; &#xff08;計數排序&#xff09;計數排序是一個廣泛使用的排序方法。下面的程序使用雙關鍵字計數排序&#xff0c;將n對10000 以內的整數&#xff0c;從小到大排序。 例如…

Vue3 項目通過 docxtemplater 插件動態渲染 .docx 文檔(帶圖片)預覽,并導出

Vue3 項目通過 docxtemplater 插件動態渲染 .docx 文檔&#xff08;帶圖片&#xff09;預覽&#xff0c;并導出 預覽安裝插件示例代碼項目目錄結構截圖實際效果截圖 動態渲染 .docx 文檔&#xff08;帶圖片&#xff09;&#xff0c;預覽、導出安裝插件docx 模板文件內容完整代碼…

養老更安心!智紳科技“智慧”養老系統,智在何處?

在老齡化趨勢不斷加劇的當下&#xff0c;養老問題成為全社會關注的焦點。 人們對于養老服務的需求日益增長&#xff0c;不僅期望能夠得到基本的生活照料&#xff0c;更渴望在安全、舒適、便捷的環境中安享晚年。 智紳科技的“智慧”養老系統應運而生&#xff0c;憑借其獨特的…

MySQL 當中的鎖

MySQL 當中的鎖 文章目錄 MySQL 當中的鎖MySQL 中有哪些主要類型的鎖&#xff1f;請簡要說明MySQL 的全局鎖有什么用&#xff1f;MySQL 的表級鎖有哪些&#xff1f;作用是什么&#xff1f;元數據鎖&#xff08;MetaData Lock&#xff0c;MDL&#xff09;意向鎖&#xff08;Inte…

vue前端代碼作業——待辦事項

美化樣式示意圖&#xff1a; 后端IDEA代碼示意圖&#xff1a; 代碼解釋&#xff1a; 1. isAllChecked 計算屬性的作用 isAllChecked 用于實現 “全選 / 全不選” 功能&#xff0c;它是一個 雙向綁定 的計算屬性&#xff08;因為 v-model 需要同時支持讀取和設置值&#xff09…

Oracle數據庫數據編程SQL<3.1 PL/SQL 匿名塊 及 流程控制中的條件判斷、循環、異常處理和隨機函數應用>

PL/SQL部分 在SQL的基礎上增加了一些過程化的控制語句。 過程化控制語句包括&#xff1a;類型定義、判斷、循環、游標、異常處理&#xff08;例外處理&#xff09; 目錄 PL/SQL匿名塊 一、匿名塊基本結構 1、匿名塊由三個部分組成&#xff1a; 2、注意事項&#xff1a; …

DeepSeek詳解:探索下一代語言模型

文章目錄 前言一、什么是DeepSeek二、DeepSeek核心技術2.1 Transformer架構2.1.1 自注意力機制 (Self-Attention Mechanism)(a) 核心思想(b) 計算過程(c) 代碼實現 2.1.2 多頭注意力 (Multi-Head Attention)(a) 核心思想(b) 工作原理(c) 數學描述(d) 代碼實現 2.1.3 位置編碼 (…

Git Reset 命令詳解與實用示例

文章目錄 Git Reset 命令詳解與實用示例git reset 主要選項git reset 示例1. 撤銷最近一次提交&#xff08;但保留更改&#xff09;2. 撤銷最近一次提交&#xff0c;并清除暫存區3. 徹底撤銷提交&#xff0c;并丟棄所有更改4. 回退到特定的提交5. 取消暫存的文件 git reset 與 …

前端知識點---事件監聽器里面的e.target跟this的區別,e.target在事件委托中的好處

文章目錄 ? 相同點? 不同點? 總結區別e.target與事件委托之間的關系 在事件監聽器中&#xff0c;e.target 和 this 有時是一樣的&#xff0c;但它們并不完全相同。 ? 相同點 當事件直接綁定到元素時&#xff1a; e.target 和 this 通常指向相同的元素&#xff0c;即事件綁…

Elasticsearch 完全指南

1. Elasticsearch基礎知識 1.1 什么是Elasticsearch Elasticsearch是一個基于Lucene的分布式、RESTful風格的搜索和數據分析引擎。它是一個開源的、高擴展的、分布式的全文搜索引擎,可以近乎實時地存儲、檢索數據。 Elasticsearch不僅僅是一個全文搜索引擎,它還可以用于以…

Python 3 與 MySQL 數據庫連接:mysql-connector 模塊詳解

Python 3 與 MySQL 數據庫連接&#xff1a;mysql-connector 模塊詳解 概述 在Python 3中&#xff0c;與MySQL數據庫進行交互是一個常見的需求。mysql-connector是一個流行的Python模塊&#xff0c;它提供了與MySQL數據庫連接和交互的接口。本文將詳細介紹mysql-connector模塊…