使用git创建临时分支名称

时间:2017-09-11 09:21:47

标签: git shell temporary

this question略有关系我想在shell脚本中使用临时分支。

有点像:

cd $(git rev-parse --show-toplevel) &&
git subtree split --prefix=some_subfolder -b temp &&
git push my_remote temp:publication_branch -f

现在,我不确定如果分支temp已经存在会发生什么,无论如何我都不希望my_remote/publication_branch上的结果依赖于此。而且我也不想修改分支temp(假设我有一些不相关的东西)。充其量,我也会在最后进行清理

cd $(git rev-parse --show-toplevel) &&
git subtree split --prefix=some_subfolder -b temp &&
git push my_remote temp:publication_branch -f
git branch -D temp

所以我正在寻找的方法是创建一个尚不存在的临时分支名称,类似于mktemp?是否有可以创建临时分支名称的git命令?

1 个答案:

答案 0 :(得分:3)

对于此特定任务,您可以使用拆分而不使用-b,使用此功能(来自其手册):

  

成功拆分后,会向stdout打印一个提交ID。这对应于新创建的树的HEAD,您可以根据需要进行操作。

所以

split_head=`git subtree split --prefix=some_subfolder`
git push my_remote "$split_head":publication_branch -f