搜尋

首頁  >  問答  >  主體

git - 如何更新不同 branch 中的同一個檔案?

例如 branch master 和 branch dev,同時有一個文件 file.ext,我在 branch dev 上更新(commit & push)了這個文件,請問如何在更新的同事更新 branch master 上的文件呢?

黄舟黄舟2841 天前743

全部回覆(5)我來回復

  • 我想大声告诉你

    我想大声告诉你2017-05-02 09:25:24

    我給的解決辦法,不是自動的,需要手動操作,應該沒法自動更新單一檔案
    1: 先切換到 master 分支:

    git checkout master
    

    2: 把分支dev上的 file.ext 檔案取出

    git checkout dev -- file.ext
    

    3: 然後把 file.ext 提交到 master上分支

    git add file.ext
    git commit -m 'update file.ext from dev'
    

    以上就是全部過程

    回覆
    0
  • 仅有的幸福

    仅有的幸福2017-05-02 09:25:24

    切換到master分支,然後merge dev ,push就有了

    回覆
    0
  • phpcn_u1582

    phpcn_u15822017-05-02 09:25:24

    如果這次提交只包含了這一需要的文件,那同事那邊直接用 master 去 pull origin dev 就好了呀

    如果 origin 上面有多個提交,同事的 master 只需要其中的一個,那麼同事那邊先在 dev 去 pull origin dev,然後回到 master 去 cherrypick dev 上需要的 commit(s)

    如果這個目標文件混在某個提交中(也就是說提交裡不止這一個變化,但是同事的 master 只需要這一個文件),那就像 @brucemj 所說,手動去 checkout

    回覆
    0
  • 阿神

    阿神2017-05-02 09:25:24

    有個辦法. 先把你要更新的內容push出去. 然後切換分支然後右鍵replace width選擇branch,tag,or reference選擇你剛剛提交的分支內容. 就ok了

    我這是eclipse .git插件

    回覆
    0
  • 仅有的幸福

    仅有的幸福2017-05-02 09:25:24

    • git checkout master

    • git cherry-pick commit-id

    回覆
    0
  • 取消回覆