使用git bash检出远程分支时如何删除路径前缀?

时间:2017-01-02 15:51:06

标签: git bash

这是一个检查所有远程分支的好命令

DriveId

如果我的结构是这样的话:

for remote in `git branch -r `; do git checkout -b $remote remotes/$remote; done

如何让上述命令仅在remotes / remote1上执行?

或换句话说:如果我有多个遥控器,如何将特定遥控器的所有分支复制到本地分支但删除远程的前缀?即remote1 / branch1最终应该作为我的工作副本中的本地分支/ branch1,NOT / remote1 / branch1

2 个答案:

答案 0 :(得分:2)

这实际上只是一个简单的grep

for remote in $(git branch -r | grep ^remote1/)
do
  git checkout -b $remote remotes/$remote
done

管道git branch -rgrep ^remote1/的输出意味着只有与^remote1/正则表达式匹配的分支才会被吐出。 (预先警告你的分支名称中有空格会在这里造成麻烦。)

答案 1 :(得分:0)

如果您只是想创建本地分支机构,

<div style="width: 100%; overflow: hidden;">

    <div style="float: left; width: 25%; padding: 5px; height: 100%; background: #F2F2F2;">
        <h1>The first column</h1>
    </div>  

    <div style="float: left; width: 50%; padding: 5px;">
        <h1>The second column</h1>
        <p>A paragraph in place</p>
        <table>             
            <tr>
                <th>Category</th>
                <th>Title</th>
                <th></th>
            </tr>
        </table>
    </div> <!-- added here -->
    
    <div style="float: right; width: 25%; padding: 5px; height: 100%; background: #EFF7FF;">
        <h1>The third column</h1>
    </div> 
    
</div>