我是shell脚本的新手,无法解决这个问题.如果您不熟悉,命令git branch会返回类似的内容
* develop
master
Run Code Online (Sandbox Code Playgroud)
,星号标记当前签出的分支.当我在终端中运行以下内容时:
git branch | grep "*"
Run Code Online (Sandbox Code Playgroud)
我明白了:
* develop
Run Code Online (Sandbox Code Playgroud)
正如所料.
但是,当我跑
test=$(git branch | grep "*")
Run Code Online (Sandbox Code Playgroud)
要么
test=`git branch | grep "*"`
Run Code Online (Sandbox Code Playgroud)
然后
echo $test
Run Code Online (Sandbox Code Playgroud)
,结果只是目录中的文件列表.我们如何使test ="*develop"的价值?
然后下一步(一旦我们将"*develop"变成一个名为test的变量),就是得到子串.这只是以下几点吗?
currentBranch=${test:2}
Run Code Online (Sandbox Code Playgroud)
我正在玩那个子串函数,我得到了很多"坏替换"错误,不知道为什么.
git update-server-info有什么作用?我怎么知道我是否需要它?手册说:
没有动态包生成的哑服务器必须在$ GIT_DIR/info和$ GIT_OBJECT_DIRECTORY/info目录中包含一些辅助信息文件,以帮助客户端发现服务器具有哪些引用和包.此命令生成此类辅助文件.
我怎么知道我的服务器是否笨,以及它是否做"动态包代",以及它是否"必须有一些辅助信息文件"?
我正在通过ssh将一个Web应用程序推送到一个裸存储库,然后从该裸存储库拉到Web根目录.
因为我执行了很长时间的任务,所以我知道我会用完一些东西.那不是问题.
我只是好奇,我怎么同时得到两个错误?
致命错误:允许内存大小为805306368字节耗尽(试图分配71个字节)...
-
致命错误:第0行的未知数超过300秒的最长执行时间
第一个"致命"错误不应该停止执行吗?我正在运行APC和php 5.2.6.
编辑: 这是一个截图