如何使用git在未经检查的分支上工作?

时间:2015-12-06 20:28:58

标签: git

我希望创建一个工具,将事物存储在未检出的分支中,因此在您处理当前分支时,它会透明地进行调整。

我想做的事:

  • 添加文件;
  • make commits;
  • 解决冲突;
  • 推。

什么命令可以让我这样做?

现在我通过克隆/ tmp中的本地仓库,检查秘密分支并进行处理来做到这一点。我想知道如果没有这个技巧我是否可以做到。

1 个答案:

答案 0 :(得分:1)

答案很简单。

在Git源代码的contrib/workdir目录下,您将找到名为git new-workdir的git命令。

此命令允许您并排在多个分支上同时工作 该函数的作用就是创建git文件夹的浅表副本(在新文件夹中键入树.git以查看它实际指向的位置),您将看到它指向原始git文件夹。 /> 在新文件夹中,您可以创建新的提交,分支等,并且您将在所有new-workdir个文件夹中看到它,因为它们共享“相同”的git仓库。

演示:(Unix)

  1. contrib/workdir添加到您的路径
  2. 将执行标志设置为git-new-workdir
  3. 导航到您当前的git存储库

    git new-workdir . my_new_path 
    cd my_new_path
    tree .git ( you should see links to the original git repository)
    git checkout -b new_branch
    git branch (your new branch is listed)
    cd original_path
    git branch (the new branch is listed but the current branch is the original branch)
    
  4. : - )

    Here is a screenshot of the 2 diffent branches

    Git 2.5将包含一项功能,允许您在不使用此脚本的情况下拥有多个工作目录(git checkout --to=$path)。