接下来以 bare 的形式 clone 项目代码, 并将内容 clone 到.bare文件夹内: git clone --bare git@github.com:FraserYu/amend-crash-demo.git .bare 我们还要在当前目录下创建一个.git文件,文件内容是以gitdir的形式指向我们的.bare文件夹(如果不理解 gitdir 的含义,请回看Git Worktree 大法真香) echo "gitd...
接下来以 bare 的形式 clone 项目代码, 并将内容 clone 到.bare文件夹内: git clone --bare git@github.com:FraserYu/amend-crash-demo.git .bare 我们还要在当前目录下创建一个.git文件,文件内容是以gitdir的形式指向我们的.bare文件夹(如果不理解 gitdir 的含义,请回看Git Worktree 大法真香) echo "gitd...
这两个命令就会生成一个 non-bare repo,我们通常都在这样的 repo 中进行日常工作, 你可以在这里面 add/commit/pull/push 要想生成一个 bare repo 也很简单, 只需在上面两个...
接下来,接上一篇Git Worktree 大法真香内容,借助 bare repo 的特性,来优化同时在多个分支工作的做法吧 Git Worktree 高级用法 首先,在你选定的目录下为你的项目(比如这里叫amend-crash-demo)单独创建一个文件夹, 并cd进去 mkdir amend-crash-democd amend-crash-demo 接下来以 bare 的形式 clone 项目代码, 并将...
到这里,bare repo 就解释完了。接下来,接上一篇Git Worktree 大法真香内容,借助 bare repo 的特性,来优化同时在多个分支工作的做法吧 Git Worktree 高级用法 首先,在你选定的目录下为你的项目(比如这里叫amend-crash-demo)单独创建一个文件夹, 并cd进去 ...
使用git 的 worktree 功能。基于 bare repo 创建新的 worktree,在 worktree 上进行开发,完成开发后推送内容到 bare repo。 worktree 引用 当git 仓库中存在多个 worktree 时,一些引用(refs)可以在所有 worktree 之间共享;而一些引用只能在单个 worktree 中使用。比如 HEAD 在每个 worktree 中都不同,不能共享。本节...
git clone --bare $repo .bare echo "gitdir: ./.bare" > .git echo " fetch = +refs/heads/*:refs/remotes/origin/*" >> ./.bare/config git worktree add $defaultBranch 这个script 接收两个参数 第一个参数是repo,https | ssh两种方式都可以 ...
git clone --bare $repo .bare echo "gitdir: ./.bare" > .git echo " fetch = +refs/heads/*:refs/remotes/origin/*" >> ./.bare/config git worktree add $defaultBranch 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
我理解bare的意思是,不同于以忘clone的repo下面有一个.git文件进行管理,bare直接clone了一个worktree,而tree是可以有多个branch的。形象一点的理解,之前的做法咱们仅仅只是clone了一颗树的一个树枝,而现在的做法是直接构造了一颗树,至于是否向树上添枝加叶,添哪个枝,都由我们说了算。 这样的好处就避免了多个branch...
EN/** * 在主线程中 执行代码 * * @param runnable */ public static ...