簡體   English   中英

git merge-提交或分支(不清楚的文檔)?

[英]git merge - commits or branches (not clear docs)?

從docs( https://git-scm.com/docs/git-merge

概要

git merge [-n] [--stat] [--no-commit] [--squash] [--[no-]edit]
    [-s <strategy>] [-X <strategy-option>] [-S[<keyid>]]
    [--[no-]allow-unrelated-histories]
    [--[no-]rerere-autoupdate] [-m <msg>] [-F <file>] [<commit>…​]
git merge --abort  
git merge --continue

描述

“ git merge topic”將重播在topic 分支上所做的更改

在synopsys中沒有提及分支,它列出了[<commit>…​]但所有示例都顯示了與分支merge

  • 幫助輸出是否錯誤或我缺少什么?
  • 您可以合並特定的提交嗎? (看起來好像在2009年問過: 如何在Git中合並特定的提交 -是最新的嗎?)

分支是對提交的引用。 因此,您可以通過任何方式(分支,標簽...)指定提交。

Git將搜索公共祖先並創建合並提交。 合並提交表示自身從提交序列到公用祖先到指定引用的更改。

如果您只需要合並指定序列中的一定數量的提交(而不是全部),則需要將其中一些重新設置為單獨的序列(或對每個提交使用cherry-pick命令)並合並新序列。 或任何組合。

如果只需要合並一個特定的提交,則可以對其cherry-pick ,但它不是合並提交,而是通用提交。 要使用分支合並提交實際上只包含一個提交,請使用以前的方法。

您可以使用Cherry Pick

  1. 檢出要在其中挑選特定提交的分支。 在這種情況下,主分支:

    git checkout master

  2. 現在,您可以從功能分支中挑選櫻桃:

    git cherry-pick ae79cffbcf5e14e776903521009b9361fe35fd76

這將以哈希ae79cffbcf5e14e776903521009b9361fe35fd76挑選提交,並將其作為新提交添加到master分支上。

注意:它將在master分支中具有新的(和不同的)提交ID。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM