我怎样才能提供一个真实的消息git flow release finish
?
这就是我的尝试,它的输出如下所示:
> git flow release finish -m 'Release 0.0.4 - Fixing a bug' 0.0.4
flags:FATAL the available getopt does not support spaces in options
我可以让它工作的唯一方法是当我不在消息中使用任何空格时。
我有同样的问题,但得到不同的错误信息:
$ git flow release finish -m 'Release 0.0.4 - Fixing a bug' 0.0.4
fatal: too many params
Tagging failed. Please run finish again to retry.
设法想出了一个非常难看的解决方法,但似乎对我有用,这使得它可以在脚本中使用。
这个想法是:
不知道您使用的是哪个操作系统,但这是我在 Ubuntu 上使用的序列。
$ echo 'Release 0.0.4 - Fixing a bug' > .git/MY_TAGMSG
$ git config core.editor "mv .git/MY_TAGMSG"
$ git flow release finish 0.0.4
$ git config --unset core.editor
尝试命令“git flow version”。
如果你有类似 0.X 的东西,让这个工作的简单方法是使用新的 CLI for git-flow
你可以在这里找到它:
https://github.com/petervanderdoes/gitflow/wiki
所以对我来说(在 MacOsX 上)解决方案是:
sudo brew unlink git-flow
sudo brew install git-flow-avh
你有最新的 gitflow 吗?您的版本似乎不支持 get-opt 选项中的空格。您应该尝试以下解决方法:
安装最新的 gitflow:
$ git clone git://github.com/nvie/gitflow.git
$ cd gitflow
$ git svn clone -r HEAD http://shflags.googlecode.com/svn/trunk/source/1.0 shFlags
$ sudo 安装
从 Homebrew 安装 gnu-opt:
$ brew install gnu-getopt
$ echo 'export FLAGS_GETOPT_CMD="$(brew --prefix gnu-getopt)/bin/getopt"' >> ~/.bashrc
$ . ~/.bashrc # 注意句点然后 ~/.bashrc 或者只是启动一个新终端
$ 回声 $FLAGS_GETOPT_CMD
应该返回以“bin/getopt”结尾的东西,然后试试你的命令。. .