Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xcode 用于根据当前git分支定义标志的Bash脚本_Xcode_Git_Ios_Bash_Scripting - Fatal编程技术网

Xcode 用于根据当前git分支定义标志的Bash脚本

Xcode 用于根据当前git分支定义标志的Bash脚本,xcode,git,ios,bash,scripting,Xcode,Git,Ios,Bash,Scripting,最近我遇到了一个问题。我有一个与服务器对话的应用程序。我希望它能够根据我现在所在的分支与不同的服务器进行通信。我认为这样做的方法是创建一个bash脚本,它创建一个.h文件,如 #define BRANCH @"{here goes branch name}" 唯一的问题是我不认识巴什。总之:( 这是我试过的 branch= git branch| grep '*' echo $branch 不知道下一步该做什么…(顺便说一下,我正在使用Xcode并在“运行脚本阶段”运行它)您可以通过以下方式

最近我遇到了一个问题。我有一个与服务器对话的应用程序。我希望它能够根据我现在所在的分支与不同的服务器进行通信。我认为这样做的方法是创建一个bash脚本,它创建一个.h文件,如

#define BRANCH @"{here goes branch name}"
唯一的问题是我不认识巴什。总之:(

这是我试过的

branch= git branch| grep '*'
echo $branch

不知道下一步该做什么…(顺便说一下,我正在使用Xcode并在“运行脚本阶段”运行它)

您可以通过以下方式获得当前Git分支:

git branch --no-color 2> /dev/null | sed -e '/^[^*]/d' -e "s/* \(.*\)/\1/"

这将为当前分支创建文件:

current_branch=$(git branch --no-color | grep '*' | sed 's/^\*.//')
echo "#define BRANCH @\"$current_branch\"" > file.h
文件.h将包含:
#define BRANCH@“您当前的分支”

使用vcprompt

它支持Git、Mercurial、subversion和其他(?)

以下是一份回购协议:


它还链接到其他来源

输出为#define BRANCH@development如何在bash中转义引号?编辑以回答您的评论。