使用git合併某乙個版本的某乙個分支

2021-08-26 05:42:36 字數 1674 閱讀 8326

【使用命名】

【使用場景】

我們有個穩定版本的分支,叫v2.0,另外還有個開發版本的分支v3.0,我們不能直接把兩個分支合併,這樣會導致穩定版本混亂,但是又想增加乙個v3.0中的功能到v2.0中,這裡就可以使用cherry-pick了,其實也就是對已經存在的commit 進行再次提交.

【使用說明】

$ git checkout v2.0分支

$ git cherry-pick 38361a55 # 這個 38361a55 號碼,位於v3.0分支中:

$ git log

commit 38361a55138140827b31b72f8bbfd88b3705d77a

author: justin justin@***.com

date: sat dec 10 00:11:44 2016 +0800

1. 如果順利,就會正常提交。結果:

finished one cherry-pick.

on branch v2.0分支

your branch is ahead of 'origin/old_cc' by 3 commits.

2. 如果在cherry-pick 的過程中出現了衝突

automatic cherry-pick failed.

after resolving the conflicts,mark the corrected paths with 'git add ' or 'git rm 'and commit the result with:

git commit -c 15a2b6c61927e5aed6111de89ad9dafba939a90b

或者:

就跟普通的衝突一樣,手工解決:

2.1 $ git status # 看哪些檔案出現衝突

2.4 git commit -c 《新的commit號碼》

2.5 再次cherry-pick剩餘commit

error: a cherry-pick or revert is already in progress

hint: try "git cherry-pick (--continue | --quit | --abort)"

fatal: cherry-pick failed

則執行對應操作:

git cherry-pick --continue

git cherry-pick --quit

git cherry-pick --abort

命令集合:

前者表示把到之間(左開右閉,不包含start-commit-id)的提交cherry-pick到當前分支;

後者有"^"標誌的表示把到之間(閉區間,包含start-commit-id)的提交cherry-pick到當前分支。

其中,到只需要commit-id的前6位即可,並且在時間上必須早於

注:以上合併,需要手動push**。

新增某乙個圓角,和某乙個邊框

為所有uiview的繼承類,切割圓角,新增任意邊框 因為這兩個功能未必要同時使用,所以是分開的兩個檔案 圓角 需要 import uiview gfcorner.h 使用 如下 img cornerwithradius 10 direction cornerdirectiontypebottom c...

遍歷某乙個程序的模組

include stdafx.h include include include bool getmodulelist dword dwpid 1.建立乙個模組相關的快照控制代碼 hmodulesnap createtoolhelp32snapshot th32cs snapmodule,指定快照的...

git 從某乙個提交歷史版本號中切出乙個新的分支

由於某些原因,需要在git 上次提交的版本基礎上進行一些修改,如果以當前版本來修改,會造成影響其他功能使用的情況。可以使用git從某次的提交版本號上切出乙個分支,在此分支上進行修改。git checkout b branch name version id下面是演示圖 首先,在這個例子倉庫中,只有乙...