git worktree 使用筆記


一 worktree 的基本概念和操作

再也不用克隆多個倉庫啦!git worktree 一個 git 倉庫可以連接多個工作目錄 - walterlv的專欄 - CSDN博客
再也不用克隆多個倉庫啦!git worktree 一個 git 倉庫可以連接多個工作目錄 - walterlv

二 語法速覽

  • 最簡單的寫法:
    git worktree add <新路徑>
    將基於當前分支,新建一個 worktree 目錄,新的分支名就是新建目錄的名稱。

  • 新建一個指定分支
    git worktree add <新路徑> -b <新分支名>
    將基於當前分支,新建一個 worktree 目錄,新的分支名是指定的名稱。

  • 基於指定分支新建一個指定分支
    git worktree add <新路徑> -b <新分支名> <指定分支名>
    將基於指定分支,新建一個 worktree 目錄,新的分支名是指定的名稱。

三 注意事項

  • <新路徑>
    新路徑一般是類似 ../myproject-bugfix 這樣的命名,是相對路徑,注意,這里一定是兩個點:
    ../myproject-bugfix
    表示在當前目錄的父目錄新建,這樣才是與原工程目錄平級。(當前,你當前得在原工程的跟目錄中。)
    總之,注意相對路徑。

  • 使用 git reset --hard 重置新的 worktree
    如果使用了 git worktree add <新路徑> 最簡單的方法新建,通常分支需要重新命名,基於的分支也要改。
    可使用 git reset --hard <要基於的分支名> 重置到想要的分支,使用 git branch -D <想要刪除的分支名> 刪除自動創建的與目錄名相同的分支。

四 其它廢話

相比復制多個倉庫,肯定是 worktree 的方式更高效。
當然,worktree 不允許兩個 worktree 使用同一個分支。如果有這個需要怎么辦?新建一個分支,reset 到目標分支,再基於這個新分支工作,效果一樣。
但如果你經常需要在兩個目錄中使用同一個分支,那么可能是分支管理或工作方式需要改進。

另外,不使用的 worktree 盡早刪除,並運行 git worktree prune 清理。

原文鏈接:
https://www.cnblogs.com/jasongrass/p/11178079.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM