zoukankan      html  css  js  c++  java
  • 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

  • 相关阅读:
    互斥量
    读写锁
    死锁
    pthread
    线程
    守护进程
    信号捕捉
    信号集
    信号
    mmap
  • 原文地址:https://www.cnblogs.com/jasongrass/p/11178079.html
Copyright © 2011-2022 走看看